历史版本12 :微信集成常见问题 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

本文总结了 FineReport 与微信集成的常见问题及解决方案。

微信钉钉推送/单点/同步失败解决方案可参考:微信钉钉推送/单点/同步失败日志定位

2. 企业微信手动匹配清空后无效果编辑

问题描述:

做了企业微信集成,手动匹配,先匹配一遍,保存,再选择不选,点立即更新,这个企业微信用户还是能直接用企业微信端,需要删除用户或者禁用之后,才能立即生效,选择不选,之后立即更新还是没办法立即生效。

原因分析:

企业微信本身存在缓存。

解决方案:

重新登录或者等待一段时间候会更新。

3. 微信解析参数值编辑

问题描述:

微信集成配置单个模板链接,参数值设置如下,推送到移动端打开后获取不到值:

原因分析:

参考文档参数值解析的说明:企业微信集成,当参数值为公式时,不应该勾选解析参数值」。

解决方案:

取消勾选解析参数值,则会每次移动端访问是自动计算。

4. 单点登录失败编辑

4.1 单点登录失败显示移动端的登录页面

原因分析:

微信管理后台自建应用的应用主页填写的不是单点链接。

解决方案:

单点链接的生成参考 4.2.3 节:企业微信集成

4.2 所有用户都显示登录页面

原因分析:

1)平台用户和集成用户都正常添加可查看,可能是匹配方式错误。

2)平台用户或集成用户里没有用户数据

解决方案:

1)参考文档 4.3 节 企业微信集成

2)同步平台用户或集成用户即可。

4.3 部分用户显示登录页面

原因分析:

1)该用户在平台被禁用。

2)平台用户或集成用户的数据缺失导致匹配失败。

解决方案:

1)开放权限。

2)重新匹配数据保持一致。

4.4 显示PC的登录页面

解决方案:

安装HTML5移动端展示插件。

4.5 微信所有用户单点后显示加载失败。

原因分析:

微信管理-服务器地址中,以/结尾,FineReport会自动去掉尾部的/,这里主要是会影响生成链接拼接参数和定时调度推送链接的生成,所以这个去掉尾部/的逻辑也不能去掉。

解决方案:

去掉/,并保证在去掉/的时候可以正常访问工程,重新生成地址挂到后台应用主页地址。

4.6 有自己的门户登录页,登录门户账号后会跳转到平台登录页

问题描述:

有自己的门户登录页,登录门户账号后会跳转到平台登录页而不是直接访问首页/目录/单张模板。

原因分析:

写了门户登录页,却没有放行微信请求,

解决方案:

可以抓包定位到问题,并且放行 /weixin/single/login 请求。

钉钉:/dingtalk/single/login 

飞书:/feishu/single/login    

WeLink:/welink/single/login 

5. 微信小程序嵌入报表链接被截断编辑

问题描述:

微信小程序集成嵌入的报表链接地址被截断。

原因分析:

url中 ? 及之后的内容被截断,是微信小程序本身的机制导致的。

解决方案:

需要对url进行转码。

6. 微信推送打开报错定时结果文件不存在编辑

问题描述:

定时调度修改后无法保存,会提示任务更新失败,微信推送定时结果链接,在手机端打开报错提示找不到定时结果文件

原因分析:

put 请求被禁用。

解决方案:

安装 put、delete 请求转换插件。

7. 微信集成后扫码控件无法使用编辑

问题描述:

微信集成单点是成功的,域名通过了校验,文本框点击扫码按钮没反应。有无法扫码的弹窗提示「当前浏览器无法扫描」,但 PC 端和 App 内正常。报错如下图所示:

原因分析:

微信集成环境下,要求实现单点登录,域名必须经过校验。域名校验错误,后台校验的是带XX端口的域名,但是实际 H5 进去之后是不带 XX 端口的域名,导致微信集成后文件控件或文本控件扫码无法使用。

解决方案:

可参考:微信集成后文件控件&文本控件扫码无法使用

8. 无法同时推送两个及以上钉钉群编辑

问题描述:

定时调度推送至钉钉群,当选择的群为多个时,只有排在第一位的群可以正常收到消息,其他群不行。单独设置推送到其中的某一个群,可以正常推送。

原因分析:

微信应用的 chart 相关接口权限未开通导致,如下图所示:

解决方案:

开启 chart 相关接口权限。

9. 定时调度推送微信链接无单点效果编辑

问题描述:

定时调度在移动端微信推送的时候,无法直接获取到用户名。

原因分析:

推送自定义链接,需要手动在微信页面生成一个链接进行推送,否则不会走单点逻辑。

解决方案:

在微信管理-应用快捷配置中手动生成模板的微信链接进行推送。

10. 定时调度部分用户无法接收编辑

问题描述:

微信部分用户定时调度消息收不到消息

排查步骤:

1)用户是否匹配了平台用

2)用户匹配的平台用户是否在推送的范围内

3)检查在触发消息推送的时间点,是否有同步通讯录的操作,导致匹配关系更新或更新不及时出现匹配失败

11. 平台报错同步失败编辑

问题描述:

平台报错同步失败,失败原因:树构建失败,XX部门找不到对应父部门。

解决方案:

1)创建的微信应用,可见范围只是根部门下的某个部门,修改应用的可见范围为根部门或使用 tag 标签(tag标签只能够选单个用户,如果勾选了部门是无法同步的)

2)企业微信私有部署,不想设置可见范围是根部门,也不支持根据 tag 标签修改应用可见范围,可联系帆软技术支持通过二次开发处理

12. errorCode:500,errorMsg:com.fr.plugin.weixin.server.WeiXinTokenMissedException编辑

问题描述:

前端报错「发生错误,错误码为:500」

日志报错:errorCode:500,errorMsg:com.fr.plugin.weixin.server.WeiXinTokenMissedException

排查步骤一:检查网络

1)前往平台微信管理>应用管理,编辑已存在的应用,保存,看能不能保存上,可以说明网络正常,不行则网络不通,检查网络

2)同步通讯录看能否获取用户列表,不行说明网络可能有问题

3)用「管理系统>微信管理>调试工具工具看下基本信息,token能否获取,获取不到的话一般也是网络问题

4)在报表服务器上ping  qyapi.weixin.qq.com,看能否ping通,或者如果配置了正向代理的话,看下代理服务器是否有问题

5)检查服务器是否多个网卡,多网卡的话是否每个网卡都能访问到微信服务器

6)是否是集群环境,是的话,检查每个节点的网络环境

排查步骤二:配置问题

微信后台配置的链接有问题,指向的是别的环境的地址链接,或者说配置好链接以后前端微信应用删除重加了,导致后台配置的链接无效

在「微信管理>应用快捷配置里,选择应用,点击一键配置,重新配置;或者微信管理>应用快捷配置里,生成单点链接以后重新配置到微信应用后台。

排查步骤三:重启服务器

若一键配置无效,可采用重启服务器的方式,服务器重启,所有的代码重新执行。

排查步骤四:手机微信退出重登

有可能是手机缓存引起的,退出重新登录即可。

排查步骤五:微信应用名称

将微信应用名称修改为英文

13. 微信集成,企业微信能收消息,个人微信收不到编辑

问题描述:

信集成各项配置正常的情况下,企业微信可以收消息,关联的个人微信收不到消息

解决方案:

登录企业微信,选择我>设置」,选择新消息通知」,关闭仅在企业微信中接收消息」即可。

14. 微信应用添加不上编辑

问题描述:

微信应用无法添加成功,报错为:网络异常或请确认当前使用的 corpid 和 secret 是否正确。

原因分析:

应用信息有误或网络问题。

排查步骤一:应用信息排查

1)检查微信应用配置是否正确,可见范围是否为部门,部门下是否有用户。

2)检查环境是否能添加正常应用,若能正常添加,说明环境没有问题,进行应用信息排查。

排查步骤二:网络排查

1)使用微信调试工具,检查能否获取微信企业信息。通常情况下,应用添加不上的时候,应该会返回如下的内容,这个结果表示报表环境调用微信接口,获取不到 token。

2)远程的报表环境所在服务器,在浏览器中(推荐使用Chrome)输入以下地址:https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=微信应用ID&corpsecret=微信应用secret,返回如下图所示信息,代表服务器网络正常,可以获取微信 token 值,排除服务器网络原因。

3)如果服务器网络正常,而工程访问不到微信,可能的原因如下:

  • 防火墙:检查下是否开启了防火墙,把工程端口限制了(限制了出站访问)。

  • JDK 问题:更换 JDK 版本。

  • 查看报错:若后台有报错  PKIX path building failed,是 ssl 证书问题,重装 JDK 。

  • 代理服务器配置问题。