前言:微信公众号开发离不开jssdk,很多操作都基于这个sdk搞骚操作的
1. 首先我们要下载这个sdk源
vue可以直接npm
text
npm install weixin-js-sdk --save
也可以
在需要调用JS接口的页面引入如下JS文件,(支持https):
text
http://res.wx.qq.com/open/js/jweixin-1.6.0.js
2. 通过config接口注入权限验证配置
text
wx.config({
debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
appId: '', // 必填,公众号的唯一标识
timestamp: , // 必填,生成签名的时间戳
nonceStr: '', // 必填,生成签名的随机串
signature: '',// 必填,签名
jsApiList: [] // 必填,需要使用的JS接口列表
});
上面这些数据最好全部通过接口(后台)回调过来方便配置,
签名算法在微信文档哪里
微信签名验证
https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=jsapisign
3. 查看回调状态
成功回调
text
wx.ready(function(){
//config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,
//config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,
//则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,
//则可以直接调用,不需要放在ready函数中。
});
失败回调
text
wx.error(function(res){
// config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,
//也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
});
接口调用说明
所有接口通过wx对象(也可使用jWeixin对象)来调用,参数是一个对象,除了每个接口本身需要传的参数之外,还有以下通用参数:
-
success:接口调用成功时执行的回调函数。
-
fail:接口调用失败时执行的回调函数。
-
complete:接口调用完成时执行的回调函数,无论成功或失败都会执行。
-
cancel:用户点击取消时的回调函数,仅部分有用户取消操作的api才会用到。
-
trigger: 监听Menu中的按钮点击时触发的方法,该方法仅支持Menu中的相关接口。
备注:不要尝试在trigger中使用ajax异步请求修改本次分享的内容,因为客户端分享操作是一个同步操作,这时候使用ajax的回包会还没有返回。
以上几个函数都带有一个参数,类型为对象,其中除了每个接口本身返回的数据之外,还有一个通用属性errMsg,其值格式如下:
调用成功时:”xxx:ok” ,其中xxx为调用的接口名
用户取消时:”xxx:cancel”,其中xxx为调用的接口名
调用失败时:其值为具体错误信息