前端UNI-APP调用企业微信客户端API JS-SDK方法

本文详细介绍了如何在前端uni-app中调用企业微信客户端API,包括设置应用可信域名、引入js、注入应用权限及调用打开会话接口的步骤。遇到的挑战主要是官方文档不清晰,但经过研究最终成功实现。

目录

前言

一、设置应用可信域名

二、引入js

三、注入应用的权限

四、调用打开会话接口 


前言

企业微信官方的客户端API接口文档写得不太清晰,自己查阅资料,参考官方文档,历时一天,终于成功了。

后端Signature签名生成,前端UNI-APP调用企业微信客户端接口方法。


一、设置应用可信域名

所有的JS接口只能在企业微信应用的可信域名下调用(包括子域名),且可信域名必须有ICP备案且在管理端验证域名归属。
验证域名归属的方法在企业微信的管理后台“我的应用”里,进入应用,设置应用可信域名。

企业微信申请域名验证
eg: 将WW_verify_gPO4DZteSvyQZNRk.txt文件放到IIS文件夹底下

二、引入js

代码如下(示例):调用 wx.agentConfig需要引入 jwxwork sdk

<script src="//res.wx.qq.com/open/js/jweixin-1.2.0.js" type="text/javascript"></script>

三、注入应用的权限

代码如下(示例):

前提:

  1. 企业微信的corpid
  2. 企业微信的应用id
  3. 企业微信的secret

signature获取:
corpid + secret --> access_token --> ticket --> 拼接参数加密
JS-SDK使用权限签名算法

wx.agentConfig({
    corpid: '', // 必填,企业微信的corpid,必须与当前登录的企业一致
    agentid: '', // 必填,企业微信的应用id (e.g. 1000247)
    timestamp: , // 必填,生成签名的时间戳
    nonceStr: '', // 必填,生成签名的随机串
    signature: '',// 必填,签名,见附录-JS-SDK使用权限签名算法
    jsApiList: ['selectExternalContact'], //必填,传入需要使用的接口名称
    success: function(res) {
        // 回调
    },
    fail: function(res) {
        if(res.errMsg.indexOf('function not exist') > -1){
            alert('版本过低请升级')
        }
    }
});

四、调用打开会话接口 

注入应用权限之后就可以测试接口了,打开浏览器调试报错: Uncaught TypeError: wx.agentConfig is not a function
只能发布,然后通过企业微信打开URL才能测试接口

wx.openEnterpriseChat({
        // 注意:userIds和externalUserIds至少选填一个。内部群最多2000人;外部群最多500人;如果有微信联系人,最多40人
    userIds: 'zhangsan;lisi;wangwu',    //参与会话的企业成员列表,格式为userid1;userid2;...,用分号隔开。
    externalUserIds: 'wmEAlECwAAHrbWYDOK5u3Bf13xlYDAAA;wmEAlECwAAHibWYDOK5u3Af13xlYDAAA', // 参与会话的外部联系人列表,格式为userId1;userId2;…,用分号隔开。
    groupName: '讨论组',  // 会话名称。单聊时该参数传入空字符串""即可。
    chatId: "CHATID", // 若要打开已有会话,需指定此参数。如果是新建会话,chatId必须为空串
    success: function(res) {
         var chatId = res.chatId; //返回当前群聊ID,仅当使用agentConfig注入该接口权限时才返回chatId
        // 回调
    },
    fail: function(res) {
        if(res.errMsg.indexOf('function not exist') > -1){
            alert('版本过低请升级')
        }
    }
});


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ougexingfuba

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值