HTML5页面中的JAVASCRIPT
返回都是正确的,但是我在分享的时候,onMenuShareTimeline,onMenuShareAppMessage无反应,这是什么原因?
1、公众号中的JS安全域名已经设置
2、服务器白名单已经设置
3、access_token也是能正确返回
4、我开启测试模式,在手机上扫一扫后,显示的提示信息也是OK,没有报错
现在的问题就是分享无反应,求哪位大大帮忙看看
AJAX请求返回串:
[{"timestamp":"1530665124","appid":"wx29d5ff37be06471f","nonceStr":"fa20b353-3e99-4156-b59d-7a0558267ae0","jsapi_ticket":"HoagFKDcsGMVCIY2vOjf9nGvbrai3ssriRNDiz2rVnMK8XIf5nRbh-kkY8borm3b2kKwDTj8VOPgX7T_rcVfaA","signature":"88cd5aedbe0e00edcf03696caaf36506483c6963","url":当前的链接}]
$(document).ready(function(){
$.ajax({
type:"post",
url:"/WeChat/config.html",
data:{"url":location.href.split('#')[0]},
async: false,
dataType:'json',
success: function(data){
var obj = eval(data[0]);
wx.config({
debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
appId: obj.appid, // 必填,公众号的唯一标识
timestamp: obj.timestamp, // 必填,生成签名的时间戳
nonceStr: obj.nonceStr, // 必填,生成签名的随机串
signature: obj.signature,// 必填,签名
jsApiList: ['checkJsApi','onMenuShareTimeline', 'onMenuShareAppMessage'] // 必填,需要使用的JS接口列表
});
}
})
})
wx.ready(function(){
var link = window.location.href;
var protocol = window.location.protocol;
var host = window.location.host;
console.log(link);
console.log(host);
wx.checkJsApi({
jsApiList: [
'getNetworkType',
'previewImage'
],
success: function (res) {
//alert(JSON.stringify(res));
}
});
//分享朋友圈
wx.onMenuShareTimeline({
title: '分享标题', // 分享标题
link: link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
imgUrl: 'http://www.ceshi.com/images/wxlogo.jpg', // 分享图标
success: function (res) {
// 用户点击了分享后执行的回调函数
//alert(res);
}
});
//分享给好友
wx.onMenuShareAppMessage({
title: '分享标题', // 分享标题
desc: '分享标题', // 分享描述
link: link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
imgUrl: 'http://www.ceshi.com/images/wxlogo.jpg', // 自定义图标
type: 'link', // 分享类型,music、video或link,不填默认为link
dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
success: function () {
// 用户确认分享后执行的回调函数
},
cancel: function () {
// 用户取消分享后执行的回调函数
}
});
wx.error(function (res) {
alert("错误提示:" + res.errMsg);
});
});
楼主解决了吗!我也卡这了 求助!!
这是小程序?能分享到朋友圈?
开启debug有报信息吗?wx.checkJsApi这一步有没有success?
开DEBUG,都有报信息WX.CHECKJSAPI,也是提示OK,支持的
刚打开页面的时候,MSG也是显示OK的
我也遇到问题,模拟器上试没问题,真机上andriod和ios都不可以,微信版本6.6.6.这个问题困扰很几天了啊,直接引入都不行:
<
script
src
=
"//res.wx.qq.com/open/js/jweixin-1.2.0.js"
></
script
>
项目是Nuxt构建的Vue,SPA问题自己知道,但是一个页面都不能成功,调试也是麻烦,一步一个alert都没问题,然后分享就是不能定制文案。。。
希望你能解决,文档这方面也没写清楚,我自己检查了很多遍,都没有问题,开启调试模式,显示也是OK,但是分享事件就是不执行
你的签名中涉用的到的url和当前分享的url不一致导致的
@ 橘子酱 昨天晚上在同事的协助下,找到了问题:
wx.onMenuShareTimeline({
link:
''
,
// 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
},
这个Link一定要与公众号里的js安全域名一致(可以填写三个)。真是让人又想哭又想笑,wx的接口做的也真是够了,真机上调试都不会报错!
思路:
试一下其他的JS SDK的其他接口有没有生效,比如选择图片,分享到QQ、QQ空间这些。假如这些可以使用那说明config的参数应该没问题。有问题检查config参数。
再次检查分享的参数,link。
弄一个demo页,试一下。
你的签名中涉用的到的url和当前分享的url不一致导致的
现在第一个页面都不成功,签名所用的页面跟分享的页面是同一个。
console只看到一个输出的信息:window.WeixinJSBridge already exists
没有报错,不知怎么查找原因。有什么好的方法吗?
这个实际的URL和分享URL是一致的,这里只是我复制的时候,把一些信息删除了!
分享要放到ready里去
不是已经出公告了吗? 分享后不在提供是否分享成功的回调...
不是指分享结果,而是分享的事件没有执行,因为我分享的时候,图片LOGO,还是默认的LOGO
这个问题困扰很久了,求大神帮帮忙
1) url要一致
2) 分型要放到wx.ready去