uniapp整合企业微信js-sdk,jweixin,jwxwork
建议通过npm方式安装jssdk,安卓,ios都可兼容。如果想方便的查看调试信息可以安装一个vconsole。需要配置模板路径,没有的话下一个模板项目复制过来。然后在任意一个js用jWeixin.xx使用即可。然后引入两个js,顺序固定。
·
建议通过npm方式安装jssdk,安卓,ios都可兼容
npm i wecomjsdk
使用:
//自己封装的接口工具js
import api from '@/common/request/index'
//接口地址,环境等
import { AGENT_ID } from '@/env'
import jWeixin from 'wecomjsdk';
export default{
//获得企业ticket
wxInterfaceCall(url, wxApi, success,error) {
api('wechat.getSignature',{url,agentId:AGENT_ID,type:0},true).then(res=>{
if (res.data.head.code == 0) {
const data = res.data.details ? res.data.details : {};
console.log('jWeixin>>>>>>>>>>>>',jWeixin);
console.log('wx>>>>>>>>>>>>',wx);
//不能使用wx,因为已经被uniapp占用
jWeixin.config({
//不打开似乎调用invoke会有问题
beta: true,
//开启后将会在企业微信弹出alert打印参数信息
debug: false,
//企业的唯一id,在企业微信后台,我的企业最下面可以找到
appId: data.appId,
timestamp: data.timestamp,
//自己定义的随机字符串,前后端均可生成
nonceStr: data.nonceStr,
//按照官方文档生成的加密串
signature: data.signature,
jsApiList: Array.isArray(wxApi) && wxApi.length > 0 ? wxApi : []
});
if (error && typeof error === 'function') {
jWeixin.error(function(res) {
error(res);
});
}
if (success && typeof success === 'function') {
jWeixin.ready(() => {
success(jWeixin);
});
}
}
}).catch(err=>{
console.log('配置微信接口失败!',err);
});
},
//获得应用ticket
agentInterfaceCall(url, wxApi, success,error) {
api('wechat.getSignature',{url,agentId:AGENT_ID,type:1},true).then(res=>{
if (res.data.head.code == 0) {
const data = res.data.details ? res.data.details : {};
jWeixin.agentConfig({
corpid: data.appId, // 必填,企业微信的corpid,必须与当前登录的企业一致
agentid: AGENT_ID, // 必填,企业微信的应用id (e.g. 1000247)
timestamp: data.timestamp, // 必填,生成签名的时间戳
nonceStr: data.nonceStr, // 必填,生成签名的随机串
signature: data.signature,// 必填,签名,见附录-JS-SDK使用权限签名算法
jsApiList: Array.isArray(wxApi) && wxApi.length > 0 ? wxApi : [], //必填,传入需要使用的接口名称
success: function(res) {
success(jWeixin);
},
fail: function(res) {
if(res.data.errMsg.indexOf('function not exist') > -1){
error(res.data);
}
}
});
}
}).catch(err=>{
console.log('配置微信接口失败!',err);
});
}
}
如果想方便的查看调试信息可以安装一个vconsole
npm install vconsole
第二种引入方式:
需要配置模板路径,没有的话下一个模板项目复制过来
然后引入两个js,顺序固定
<script src="//res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
<script src="https://open.work.weixin.qq.com/wwopen/js/jwxwork-1.0.0.js"></script>
然后在任意一个js用jWeixin.xx使用即可
更多推荐
已为社区贡献1条内容
所有评论(0)