foxinmy / weixin4j

(微信开发工具包)weixin sdk for Java
Other
817 stars 448 forks source link

JSSDKAPI的使用 #68

Closed ygp1026 closed 8 years ago

ygp1026 commented 8 years ago

代码调试通了,Java代码里面可以获取到相关config配置,但是jsp页面总是无法正常分享,shareClick()已经执行到alert()111; 但是没有分享效果 我的代码部署到阿里云,域名已经备案,微信端JS安全域名也已经指定

又要麻烦楼主了。

--------------------spring controller里面的代码 JSSDKConfigurator jssdk = new JSSDKConfigurator( mpweixinProxy.getTicketHolder(TicketType.jsapi)); //需要配置的API集合 jssdk.apis(JSSDKAPI.onMenuShareTimeline); //得到配置的json字符串 String config = jssdk.toJSONConfig("http://www.XXXXX.cn/weixin/education/product/detail/1"); //放到request作用域 System.out.println(config); model.addAttribute("jssdk",config); ------------------------------------config信息获取正常 {"timestamp":"1464093282","appId":"3333333485a58c3e3d","jsApiList":["onMenuShareTimeline"],"nonceStr":"3333333pQAqPSIMXAD8OZksw","debug":false,"signature":"c543b6251a0d234fcd163bacb4594242b14fb1a0"} --------------JSP页面 `

` -----------触发事件 `
` ------------参考您case写的 `https://github.com/foxinmy/weixin4j/issues/57`
foxinmy commented 8 years ago

感谢反馈。 代码并没有错,唯一不对的地方是你把微信的分享功能理解错了。

微信所谓的分享功能 只能监听用户的分享动作,不能控制用户的分享行为。

wx.onMenuShareTimeline 这段代码不是写在按钮的click事件里 而是在页面加载完毕后执行。

而 上述代码执行成功后,用户主动点击右上角的「...」按钮弹出操作界面。

再点击分享到朋友圈 这个时候成功后 才会触发 success 事件。

同理如果用户放弃分享则 触发 ·cancel· 事件。

这个分享功能比较坑了,我当初也被误导了。

ygp1026 commented 8 years ago

刚刚把debug=true,确实看到了返回的信息{“errMsg”:"config:ok"} 我真的把分享功能理解错了 。呵呵

谢谢楼主指点了

ygp1026 commented 8 years ago

已经完全理解这个接口: 如果执行有问题,debug=true的时候会弹出提示,例如提示签名错误 如果执行没用问题,则提示config:ok

-----如果执行有问题,则不会显示分享到朋友圈或者什么的,如果执行没用问题则会显示分享到XXXXXX 这个方法是分享之后调用使用的

感谢楼主普及,关闭改case