小程式 報錯 errcode: 40029, errmsg: "invalid code, hints: [ req_id: HQd79a0747th31 ]
阿新 • • 發佈:2019-01-04
☾ .背景
- 今天在進行小程式開發過程中,需要登入獲取使用者的
token
資訊 - 當呼叫
wx.login
後,進一步需要根據所得的code
碼進行登入憑證校驗(包含 openid、session_key或者unionid等)
- 【更新
(2018-06-13)
】
提示:
如果自己的程式碼前一天沒問題,第二天突然不能執行,我建議小程式移除這個專案,然後再新專案匯入回去再測試,直接氣瘋了,今天就是這個問題,總報錯errcode: 40029
,我認為就是 開發工具存在BUG !!!
☺. 我的問題/解決
- 其中,前提是我之前的程式碼可以實現想要的功能,而後期我需要更換新的小程式賬號資訊(app_id、app_secret)
此時,我將服務端的賬號資訊進行了替換,發現,會有下面的報錯
errcode: 40029, errmsg: "invalid code, hints: [ req_id: HQd79a0747th31 ]
進一步借鑑網上的一些經驗提示,需要對應替換掉小程式
project.config.json
檔案中的appid
資訊此時,如果只是重啟了開發者工具,依舊還是沒有解決問題,當然,清除全部快取也無濟於事
最後,我試著將開發者工具中的 此小程式專案刪掉,然後重新匯入開啟
問題 神奇的解決了,可能是開發者工具存在著部分隱患
☹. 補充說明
- 可以認為這是小程式的一個
坑
- 官方對返回的資訊有以下提示:
//正常返回的JSON資料包
{
"openid": "OPENID",
"session_key": "SESSIONKEY",
}
//滿足UnionID返回條件時,返回的JSON資料包
{
"openid": "OPENID",
"session_key": "SESSIONKEY",
"unionid": "UNIONID"
}
//錯誤時返回JSON資料包(示例為Code無效)
{
"errcode": 40029,
"errmsg": "invalid code"
}
- 如果想獲取上面的
UnionID
資訊,需要在微信開放平臺
進行小程式的賬號繫結,否則無法獲取
開發配置後,獲取資訊截圖如下: