【概述】企业微信网页开发,调用原生能力必不可少,so,如何使用JS-SDK实现?
【官方文档】https://work.weixin.qq.com/api/doc#10029/
【步骤】
step1:完全按照手册如下操作即可
step2:获取config中需要的配置数据(补充)
参考服务端API配置https://work.weixin.qq.com/api/doc#90000/90135/90664和JS-SDK文档https://work.weixin.qq.com/api/doc#90000/90136/90506获取应用签名
这里可以直接参考使用PHP Demo中的方法(参考上篇:https://blog.csdn.net/gzyh_tech/article/details/88565966):
获取签名和时间戳等配置信息
/**获取jsqpi**/
$jsapiTicket=$api->JsApiTicketGet();
$nonceStr=createNonceStr();
$timestamp=time();
$jsapi=$api->JsApiSignatureGet($jsapiTicket, $nonceStr, $timestamp, getUrl());
在页面js中这么写:
wx.config({
beta: true,// 必须这么写,否则wx.invoke调用形式的jsapi会有问题
debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
appId: '<?php echo $config['CORP_ID']?>', // 必填,企业微信的corpID
timestamp:'<?php echo $timestamp?>' , // 必填,生成签名的时间戳
nonceStr: '<?php echo $nonceStr?>', // 必填,生成签名的随机串
signature: '<?php echo $jsapi?>',// 必填,签名,见附录1
jsApiList: ['scanQRCode'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
});
这就配置好了,基本的使用如下:
wx.ready(function () {
//TODO: 执行和jsapi相关的初始化操作
//二维码扫描
$("#scan").on("click",function(){
wx.scanQRCode({
desc: 'scanQRCode desc',
needResult: 1, // 默认为0,扫描结果由企业微信处理,1则直接返回扫描结果,
scanType: ["qrCode", "barCode"], // 可以指定扫二维码还是条形码(一维码),默认二者都有
success: function(res) {
// 回调resultStr&errMsg
},
error: function(res) {
if (res.errMsg.indexOf('function_not_exist') > 0) {
alert('版本过低请升级');
return;
}
alert(res.errMsg)
}
});
})
});