admin管理员组文章数量:1569936
首先引用所需要的js文件
<!-- config -->
<script src="//res.wx.qq/open/js/jweixin-1.0.0.js"></script>
<!-- agentConfig -->
<script type="text/javascript" src="https://open.work.weixin.qq/wwopen/js/jwxwork-1.0.0.js"></script>
获取config的配置信息,配置成功后在调用你所需要调用企业微信的接口
注意:如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。
调用agentConfig(注入的是应用的身份与权限)时要在config(注入的是企业的身份与权限)信息配置成功后在配置(注意:从企业微信3.0.24及以后版本(可通过企业微信UA判断版本号),无须先调用wx.config,可直接wx.agentConfig.)
wx.agentConfig({
beta: true, // 必须这么写,否则wx.invoke调用形式的jsapi会有问题
// 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
// debug: true,
// 必填,企业微信的corpid,必须与当前登录的企业一致
corpid: data.wx_corpid,
// 必填,公众号的唯一标识
agentid: data.wx_agentid,
// 必填,生成签名的时间戳
timestamp: data.sign.timestamp,
// 必填,生成签名的随机串
nonceStr: data.sign.nonceStr,
// 必填,签名
signature: data.sign.signature,
// 必填,需要使用的JS接口列表,所有JS接口列表
jsApiList: ["checkJsApi", "getContext", "getCurExternalContact"],
success: function(res) {
_this.checkJsApi()
}
})
checkJsApi:当前客户端版本是否支持指定JS接口
wx.checkJsApi({
jsApiList: ['chooseImage'], // 需要检测的JS接口列表
success: function(res) {
// 以键值对的形式返回,可用的api值true,不可用为false
// 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}
}
});
成功后调用wx.getContext接口,获取进入的信息,通过wx.getCurExternalContact获取用户id获取数据,后面就根据业务逻辑写就好了
checkJsApi() {
const _this = this
wx.checkJsApi({
jsApiList: [ "getContext", "getCurExternalContact"], // 需要检测的JS接口列表
success: function (res) {
// 以键值对的形式返回,可用的api值true,不可用为false
// 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}
let obj = res.checkResult;
wx.invoke('getContext', {}, function(res){
if(res.err_msg == "getContext:ok"){
// single_kf_tools 客服工具栏进入
// entry = res.entry ; //返回进入H5页面的入口类型,目前有normal、contact_profile、single_chat_tools、group_chat_tools、chat_attachment
if (res.entry === 'single_kf_tools') {
_this.getUserId()
}
}else {
//错误处理
_this.$toast('请从微信客服端进入!')
}
});
},
});
},
getUserId() {
const _this = this
wx.invoke('getCurExternalContact', {}, function(res){
if (res.err_msg == "getCurExternalContact:ok") {
_this.userId = res.userId ; //返回当前外部联系人userId
const params = {
company_id: localStorage.getItem("company_id") || Cookies.get('company_id'),
weixin_id: _this.userId
}
_this.getData(params)
} else {
//错误处理
console.log('getCurExternalContact:err')
// window.alert(res)
}
});
}
版权声明:本文标题:记企业微信调用wx.getContent判断进入H5页面的入口环境 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dongtai/1725776625a1041916.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论