在使用微信、釘釘、飛書、WeLink相關功能時,可能會一些錯誤。
本文簡單介紹,日誌中此類情況相關錯誤碼的原因和解決方案。
注:本文僅列舉帆軟可能導致的相關錯誤碼。對於非程式碼 Exception,例如 npe,無法給出建議。
原因分析:
sb 參數是插件用來判斷是哪個應用正在單點登入的,缺少sb參數則會導致單點登入失敗
解決方案:
請檢查單點登入連結中有沒有帶上sb參數,如果是自行構造的連結,則需要把fine_weixin_agent表中 id 列拼上"weixin"再經過 md5 編碼得到 sb 參數
釘釘、飛書、WeLink同理
原因分析:微信使用者如果處於被禁用狀態,會導致單點登入失敗,
解決方案:請去微信解除使用者的禁用狀態。釘釘、飛書、WeLink同理
原因分析:單點登入中,OA使用者匹配到的平台使用者不存在
解決方案:請檢查在帆軟數據決策系統-系統管理-使用者管理中,是否建立了對應使用者
解決方案:請確認匹配關係設定是否正確
可參考對應文檔:微信整合4.3 成員管理;釘釘整合2.10 成員管理
原因分析:API呼叫超頻
解決方案:查看日誌中微信傳回的資訊是否提示超頻。如果有報錯,則參考網路異常 23001 的排查方案
1)如果日誌中報出connection refused字樣的錯誤,說明當前伺服器網路是無法與外網建立連結的。可以透過“curl https://qyapi.weixin.qq.com/cgi-bin/gettoken”來驗證,如果有傳回內容,則說明外網可以連通,如果沒有傳回內容,則說明外網無法連通。
2)如果日誌中報出UnKnownHostException: qyapi.weixin.qq.com,則說明當前伺服器所在網路的 dns 解析伺服器無法解析微信的域名地址。
3)如果需要使用 nginx 代理轉發的方式才可以存取外網,請參考文檔:代理伺服器配置,最後將設定好的代理地址填入「微信管理>快捷配置」中。
4)如果當前伺服器所在網路使用的是系統代理,則需要在 web 容器中指定 jvm 參數:-Dhttp.proxyHost=代理地址 -Dhttp.proxyPort=埠。
5)如果微信插件報網路異常的錯誤,可以透過郵件通知來測試是不是真的是伺服器無法存取外網導致的
微信測試地址: https://qyapi.weixin.qq.com/cgi-bin/gettoken
釘釘測試地址:https://oapi.dingtalk.com/gettoken
飛書測試地址:https://open.feishu.cn/open-apis/auth/v3/app_access_token/internal/
WeLink測試地址:https://open.welink.huaweicloud.com/api/auth/v2/tickets
微信:
在確定伺服器網路可以連通外網的前提下,
1)請檢查當前應用裏面是否有 secret 或者 corpid 填寫錯誤的應用。
2)請檢查無法獲取 token 的應用是否已經在微信管理後台被刪除了。
3)請確定fine_weixin_agent表中不存在管理組金鑰的應用(即 type 欄位為 1 的應用)
釘釘:
在確定伺服器網路可以連通外網的前提下,請檢查當前應用裏面是否有 secret 或者 appKey 填寫錯誤的應用
原因分析:部署工程的環境沒有安裝curl工具,導致除錯時無法執行curl命令進而報錯
解決方案:請自行給帆軟應用所在伺服器安裝curl工具
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙