企业微信开发(自建应用h5)

1.企微后台(管理应用、设置应用可见人员范围等):企业微信

2. 企微开发者中心(API文档):简易教程 - 接口文档 - 企业微信开发者中心

3. oAuth2链接创建(静默授权和手动授权):开始开发 - 接口文档 - 企业微信开发者中心

4. 企微开发(小程序、js-sdk): 概述 - 接口文档 - 企业微信开发者中心

5. 企微返回错误码查询工具:错误码查询工具 | 企业微信

6. 企微帮助中心(如:如何设置客户联系使用范围人员、如何标记为客户群等):企业微信如何设置客户联系业务负责人-帮助中心-企业微信企业微信如何创建客户群-帮助中心-企业微信

一、创建应用

自建应用是在管理后台创建的,第三方应用是授权安装服务商下面的应用。

二、常用配置操作

1、如何隐藏某个应用不在工作台展示?

答:企微后台-》找到要隐藏的应用-》“企业微信授权登录”-》勾选上“在工作台隐藏此应用”即可。

2、

三、项目中遇到的问题&解决(项目框架:taro3+react+ts)

1、oAuth2的h5页面链接,Android手机可以正常访问,但IOS手机报错:网络错误,请重试。

答:因oAuth2配置的redirect_uri的h5页面链接中,含有符号“#”,iOS特殊, IOS会将该符号转成其他东西,导致页面访问不到。解决:手动将编码后的http链接放到oAuth2链接redirect_uri中即可。

const redirect_uri = encodeURIComponent('http://xxx.com/#/pages/index/index')

(PS扩展:原生app嵌入H5网页时,也出现这个问题,同一个h5链接,android可以访问,iOS一直访问不了(也是因为#符号的问题),需让App开发人员对H5链接做下处理即可。)。具体参考:企业微信聊天工具栏安卓可以正常访问,ios提示网络错误 | 微信开放社区

2、企业微信版本:4.0.5。 ios手机和mac电脑,常偶现报错:wx.agentConfig为undefind,但是android和windows都是正常的。

答:在调用wx.agentConfig方法外层用一个延时器包裹,延时调用该方法即可。参考官网:wx.agentConfig - 接口文档 - 企业微信开发者中心

const timer = setTimeout(() => {
    wx.agentConfig({...})
    clearTimeout(timer)
},500)

3、同一台电脑切换不同员工的企微账号,h5应用的localStorage的数据(状态管理使用的)不会自动清除,导致后一个员工直接能使用前一个员工的缓存信息。

答:切换不同账号时,cookie会被自动清除。可先用cookie设置当前用户的唯一标志,当取localStorage的时候,先取cookie数据进行比较,若是同个用户可使用,否则不能使用(清空localStorage或再额外设置另外一个localStorage?)。

4、客户详情页,点编辑->Taro.navigateTo到编辑页->编辑页编辑成功后,使用Taro.navigateBack返回详情页,竟然出现:2个详情页,即点击详情页返回,会再看到一个详情页。

答:因代码中使用Vant的Toast.show函数的onClose回调中Taro.navigateBack导致(即UI库组件的问题导致,具体原因不明,解决:使用原生的Taro方法提示)。

5、wx.agentConfig已经配置成功,从test企业(正常)切换到pre企业后,ticket配置等相关代码,一切都是正确的,但调用客户联系相关的企微api,还是报错如:getCurExternalContact:fail_ticket no available more info at xxxx=42012 maybe not added to jsApiList in wx.config.

答: 当前h5应用在企微后台:没有配置【客户联系】权限导致。解决:打开企微后台->“客户与上下游”->左侧导航栏中选择“客户”Tab-》“api”-〉可调用的应用-》添加该h5应用即可。具体参考:自建应用怎么给 客户/客户群 群发消息?权限如何配置? - 开发者社区 - 企业微信开发者中心

6、从一个页面点击跳转到(Taro.navigateTo)另外一个页面时,报错:ReferenceError:$RefreshSig$ is not defined".

答:配置config/index.js 和 babel.config.js文件,修改hot选项为false即可。

// config/index.js
h5: {
   devServer: {
     hot: false,
   },
}
// babel.config.js
module.exports = {
  presets: [
    ['taro', {
      framework: 'react',
      hot: false
    }]
  ]
}

具体参考:H5 | Taro 文档 

 7、【外部群】根据群聊ID获取客户群成员详情时,报错:no privilege to access/modify/contact/party/agent, code=60011。

答:原因是:当前外部群的群主没有设置在应用可见范围内导致。企微后台中添加即可。具体参考官网:获取客户群详情 - 接口文档 - 企业微信开发者中心

  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值