一开始进行解绑的时候,我一直用的强制解绑设备通知。微信在开发者文档中和接口权限中都没有说明这个接口有次数限制,直到最近两天,解绑一直失败才发现,原来这个接口一天限制200次。我去!太坑了。
那好吧,试试解绑设置通知吧。里面需要四个参数,access_token、ticket、deviceID、openid。ticket一开始以为是接口调用凭证的那个ticket,一直返回-1 system error错误,查看文档说是系统繁忙。好吧,我就稍后再试,半天过去了还是这个错误。于是就上网搜,没有搜到相关知识。之前加了一个微信智能硬件开发交流群,去里面问了一下,才知道原来ticket是通过jsapi接口获取的解绑设备操作凭证。我又去!费了九牛二虎之力终于解决啦,还要感谢群里的【乄侞茈♂恠苸】、【 伟人】。
第一步:引用js文件
<script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
<script src="https://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
第二步:config接口权限配置、ready权限验证
<script> wx.config({ debug: false, beta: true, appId: ‘‘, timestamp: ‘‘, nonceStr: ‘‘, signature: ‘‘, jsApiList: [ //添加使用的函数 ‘openWXDeviceLib‘, ‘getWXDeviceTicket‘ ] }); wx.ready(function(){ //初始化设备库 wx.invoke(‘openWXDeviceLib‘, {}, function(res){ // alert(res.err_msg); }); }); wx.error(function (res) { }); </script>
第三步:获取解绑通知凭证
wx.invoke(‘getWXDeviceTicket‘, {"deviceId":nobase_id,"type":2}, function(res){ res.ticket //就是要获取的凭证 });
第四步:用获取到的ticket传到后台,post提交,ok完成。