如何利用微信JSSDK调用微信扫一扫功能?具体内容如下
1。确保有调起微信扫一扫接口权限,测试号可能不行;
2。导入相关JS
& lt;脚本type=" text/javascript“http://test.com/zepto_touch.js”在& lt;/script> & lt;脚本type=" text/javascript " src=" http://res.wx.qq.com/open/js/jweixin-1.0.0.js "祝辞& lt;/script>>之前3。页面触发扫码元素
& lt; img src=" https://www.yisu.com/images/right.jpg "类=癷mg”比;>之前4。相关JS代码
& lt;脚本type=" text/javascript祝辞 var _appId=" wxz88dbd30e5580e59”; var _data=https://www.yisu.com/zixun/{ appId: _appId, url: location.href, t: math . random () }; var _getWechatSignUrl=' http://test.com/getWechatSign.do ';//获取微信签名 . ajax({美元 url: _getWechatSignUrl, 数据:_data, 成功:函数(o) { console.log (o); 如果(o。returnCode==?0”) { wxConfig (o.detail [0] .timestamp, o.detail [0] .nonceStr, o.detail [0] .signature); } } }); 函数wxConfig (_timestamp _nonceStr _signature) {//警报(“获取数据:“+ _timestamp + ' \ n ' + _nonceStr + ' \ n ' + _signature); 控制台。日志(“获取数据:“+ _timestamp + ' \ n ' + _nonceStr + ' \ n ' + _signature); wx.config ({ 调试:真的,//开启调试模式,调用的所有api的返回值会在客户端提醒出来,若要查看传入的参数,可以在pc端打开,参数信息会通过日志打出,仅在pc端时才会打印。 appId: _appId,//必填,公众号的唯一标识 时间戳:_timestamp,//必填,生成签名的时间戳 nonceStr: _nonceStr,//必填,生成签名的随机串 签名:_signature,//必填,签的名,见附录1 jsApiList: [‘onMenuShareTimeline’,‘onMenuShareAppMessage’, “onMenuShareQQ”、“onMenuShareWeibo”、“scanQRCode”)//必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); } 函数扫描码(){ wx.scanQRCode ({ needResult: 1、 scanType:“qrCode”、“条码”, 成功:函数(res) { console.log (res) 警报(JSON.stringify (res)); 结果var=res.resultStr; }, 失败:函数(res) { console.log (res) 警报(JSON.stringify (res)); } }); } & lt;/script> >之前5。获取签名接口getWechatSign。做各值生成方式
长时间戳=System.currentTimeMillis ()/1000;>之前
字符串nonceStr=RandomStringUtils.randomAlphanumeric (16);>之前
jsapi_ticket getSign公共静态字符串(字符串,字符串noncestr,长时间戳字符串url) 抛出NoSuchAlgorithmException { 字符串shaStr=" jsapi_ticket=" + jsapi_ticket +”, noncestr=" + noncestr +“×夯实=" +时间+ ",url=" +网址; MessageDigest mDigest=MessageDigest.getInstance (“SHA1”); 结果byte []=mDigest.digest (shaStr.getBytes ()); StringBuffer签名=new StringBuffer (); for (int i=0;我& lt;result.length;我+ +){ signature.append(整数。[我]和toString(结果;0 xff) + 0 x100, 16) .substring (1)); } 返回signature.toString (); } >之前6。微信参考文档
获取access_token https://mp.weixin.qq.com/wiki& # 63; t=资源/res_main& id=mp1421140183
获取jsapi_ticket https://mp.weixin.qq.com/wiki& # 63; t=资源/res_main& id=mp1421141115以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
微信JSSDK调用微信扫一扫功能的方法