微信JS-SDK接口调用及填坑攻略

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_40257787/article/details/79741760

/**
 * 微信公众平台开发文档
 * 配置安全域名
 * 文档链接
 * 引入微信jssdk文档
 * 获取签名(后台配合返回前台config)
 * 通过ready接口处理成功验证 (所有接口调用都必须在config接口获得结果之后)
 * 调取相应的接口
 * 

 * */

1.先配置安全域名,具体操作见文档

2.引入js文件:http://res.wx.qq.com/open/js/jweixin-1.2.0.js

3.通过config接口注入权限验证配置(配置需要的值需要向后台打请求返回)

wx.config({
        debug: true,     // 开启调试模式(true),调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
        appId: '',       // 必填,公众号的唯一标识
	timestamp: '',     // 必填,生成签名的时间戳
	nonceStr: '',     // 必填,生成签名的随机串
	signature: ''      // 必填,签名
	jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage'],     // 必填,需要使用的JS接口列表(比如分享到微信,分享到朋友圈)
});

4.通过ready接口处理成功验证

wx.ready(function(){
    // config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。
});

5.通过error接口处理config失败验证

wx.error(function(res){
    // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
});

以上就是微信官方文档给出的分享的具体操作步骤,下面是文件中具体放置位置:注意:开发的时候最好把底下的debug设置为true,在移动端测试的时候有错误会alert出来,很方便

扫描二维码关注公众号,回复: 2985591 查看本文章
//下面是请求配置成功以后的操作

wx.config({
	debug: false,     // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
	appId: '',     // 必填,公众号的唯一标识
	timestamp: '' ,     // 必填,生成签名的时间戳
	nonceStr: '',     // 必填,生成签名的随机串
	signature: '',    // 必填,签名
	jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage', 'onMenuShareQQ'],     // 必填,需要使用的JS接口列表(这里列出的是常用的分享接口,微信,朋友圈,qq)
});
wx.ready(function(res){       //config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后
	wx.onMenuShareTimeline({   //分享到朋友圈
	    title: '',      // 分享标题
	    link: , '',     // 或路径分享链接,该链接域名必须与当前页面对应的公众号JS安全域名一致
	    imgUrl: '',     // 分享图标
	    success: function () {
	        // 用户确认分享后执行的回调函数
            },
	    cancel: function () {
	        // 用户取消分享后执行的回调函数
	    }
	});
	wx.onMenuShareAppMessage({   //分享到微信好友
		//具体配置看文档
	});
	wx.onMenuShareQQ({      //分享到QQ
					
	});
});
wx.error(function(res){
    //config验证失败会执行的方法
});

wx.config({
	debug: false,     // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
	appId: '',     // 必填,公众号的唯一标识
	timestamp: '' ,     // 必填,生成签名的时间戳
	nonceStr: '',     // 必填,生成签名的随机串
	signature: '',    // 必填,签名
	jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage', 'onMenuShareQQ'],     // 必填,需要使用的JS接口列表(这里列出的是常用的分享接口,微信,朋友圈,qq)
});
wx.ready(function(res){       //config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后
	wx.onMenuShareTimeline({   //分享到朋友圈
	    title: '',      // 分享标题
	    link: , '',     // 或路径分享链接,该链接域名必须与当前页面对应的公众号JS安全域名一致
	    imgUrl: '',     // 分享图标
	    success: function () {
	        // 用户确认分享后执行的回调函数
            },
	    cancel: function () {
	        // 用户取消分享后执行的回调函数
	    }
	});
	wx.onMenuShareAppMessage({   //分享到微信好友
		//具体配置看文档
	});
	wx.onMenuShareQQ({      //分享到QQ
					
	});
});
wx.error(function(res){
    //config验证失败会执行的方法
});

坑点:

①分享失败

解决:最好分享当前页面链接,该链接域名必须与当前页面对应的公众号js安全域名一致

②分享消息图标不显示

解决:分享的图标链接,应该写域名下的绝对路径(不然显示不出来)

需要QQ分享的看这里:QQ分享

最近刚接触,记录不到的地方,还请提出~~~

猜你喜欢

转载自blog.csdn.net/sinat_40257787/article/details/79741760