企业微信H5开发遇到的坑

企业微信官方推荐wx.agentConfig引用<script src="https://open.work.weixin.qq.com/wwopen/js/jwxwork-1.0.0.js"></script>是没有效果的

必须引用以下代码才有效果,这也是我看了社区的回答才有所收获,是一个坑

且VUE引用在线的js必须在index.html文件中,放在<head>标签里才可以

复制代码
<script src="https://res.wx.qq.com/wwopen/js/jsapi/jweixin-1.0.0.js"></script>
  <script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>

企业官方说要使用wx.agentConfig这个方法就必须先引用成功wx.config这个,首先官方不支持前端做这个签名,由JAVA生成返回给前端,其中特别注意signature两次的签名不能一样,否则会报错

复制代码
wx.config({
    beta: true,// 必须这么写,否则wx.invoke调用形式的jsapi会有问题
    debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
    appId: '', // 必填,企业微信的corpID,必须是本企业的corpID,不允许跨企业使用
    timestamp: '', // 必填,生成签名的时间戳
    nonceStr: '', // 必填,生成签名的随机串
    signature: '',// 必填,签名,见 附录-JS-SDK使用权限签名算法
    jsApiList: [] // 必填,需要使用的JS接口列表,凡是要调用的接口都需要传进来
});



wx.agentConfig({
          beta: true, // 必须这么写,否则wx.invoke调用形式的jsapi会有问题
          debug: false,
          corpid: data.cropId, // 必填,企业微信的corpid,必须与当前登录的企业一致
          agentid: data.agentId, // 必填,企业微信的应用id (e.g. 1000247)
          timestamp: data.timestamp, // 必填,生成签名的时间戳
          nonceStr: data.nonceStr, // 必填,生成签名的随机串
          signature: data.agentSignature,// 必填,签名,见附录-JS-SDK使用权限签名算法
          jsApiList: ["getContext", "shareAppMessage", "sendChatMessage"], //必填,传入需要使用的接口名称
          success: function (res) {
            // 回调
            console.log('成功--', res)
          },
          fail: function (res) {
            console.log('fail--', res)
            that.$toast(res.errMsg)
            if (res.errMsg.indexOf('function not exist') > -1) {
              that.$toast('版本过低请升级')
            }
          }
        });

如果可信域名配置完成就可以进行开发,当然开发也有两种模式,一种是使用远程服务器开发,不用发布就可以直接在企业微信软件打开进行调试,另一种就是在本地开发,但涉及企业微信功能的API只能在发布的情况下进行调试,根据项目实际情况来,或者开发如何方便如何来

此次就记录到这里,不得不说企业微信还是有点坑的

相关推荐
IT_陈寒8 分钟前
JavaScript的异步地狱,我差点没爬出来
前端·人工智能·后端
光影少年9 分钟前
Webpack打包性能优化方面的经验
前端·webpack·性能优化
AI木马人11 分钟前
20.人工智能实战:大模型项目如何从 Demo 走向生产?一套可落地的上线验收清单与工程治理方案
java·开发语言·人工智能
CandyU213 分钟前
Unity —— 反射
java·开发语言
楼田莉子14 分钟前
仿照Muduo的高并发服务器:EventLoop模块及与TimeWheel模块联调
java·开发语言
Das115 分钟前
通过命令行下载kaggle数据
前端·chrome
小雅痞17 分钟前
[Java][Leetcode middle] 3. 无重复字符的最长子串
java·开发语言·leetcode
SamDeepThinking17 分钟前
为什么你做技术方案总是漏掉边界情况
java·后端·程序员
逻辑驱动的ken27 分钟前
Java高频面试考点场景题21
java·开发语言·面试·职场和发展·求职招聘
剑神一笑30 分钟前
CSS Animation Timeline 可视化动画编辑器:从关键帧到流畅动画
前端·css·编辑器