php小程序登录code无效,微信小程序出现“invalid code”怎么办
微信小程序出現(xiàn)“invalid code”的解決方法:我們只需要在開(kāi)發(fā)者工具的詳情界面中修改Appid即可。小程序分發(fā)的code是與appid綁定的,僅當(dāng)前申請(qǐng)code的appid才可使用。
微信小程序出現(xiàn)“invalid code”怎么辦?
微信小程序登陸模塊invalid code問(wèn)題
說(shuō)明:筆者開(kāi)發(fā)時(shí)使用的是測(cè)試appid,個(gè)人有申請(qǐng)過(guò)一個(gè)appid,所以后端使用申請(qǐng)的appid
問(wèn)題:前端使用wx.login得到code,后端從微信服務(wù)器獲取openid,但返回的結(jié)果是"invalid code"errcode: 40029, errmsg: "invalid code, hints: [ req_id: HQd79a0747th31 ]
解決思路:
前端獲取的code是微信服務(wù)器給測(cè)試的appid分配的,而后端使用的是申請(qǐng)的appid,后端帶著appid和code去申請(qǐng)openid時(shí),微信服務(wù)器會(huì)找不到對(duì)應(yīng)的code,所以返回 invalid code
解決方法:
方法一:
在“開(kāi)發(fā)者工具”的“詳情”界面修改Appid
方法二:
使用申請(qǐng)到的appid創(chuàng)建項(xiàng)目
總結(jié):
以上說(shuō)明,小程序分發(fā)的code是與appid綁定的,僅當(dāng)前申請(qǐng)code的appid才可使用
代碼://前端 js
wx.login({
success: function(res) {
if (res.code) {
console.log(res.code)
wx.request({
url: 'http://localhost:3000/login',
data: {
code: res.code
},
success: function(res) {
console.log(res.data);
},
fail: function() {
console.log('login fail')
wx.redirectTo({
url: 'pages/login/login',
})
}
})
}
}
})
后端js://后端js:
//此處使用的request 是使用了 npm 的 request packet
app.get('/login', function(req, res) {
console.log(req.query.code);
var code = req.query.code;
var url = 'https://api.weixin.qq.com/sns/jscode2session?' +
'appid=' + '{{your appid}}&' +
'secret=' + '{{your secret key}}&' +
'js_code=' + code +
'&grant_type=' + 'authorization_code';
console.log(url);
request({
url: url
},
function(err, response, body) {
if (!err) {
// console.log(body);
console.log(body);
res.end(body)
} else {
console.log(err);
}
})
})
更多相關(guān)技術(shù)知識(shí),請(qǐng)?jiān)L問(wèn)PHP中文網(wǎng)!
本文原創(chuàng)發(fā)布php中文網(wǎng),轉(zhuǎn)載請(qǐng)注明出處,感謝您的尊重!
總結(jié)
以上是生活随笔為你收集整理的php小程序登录code无效,微信小程序出现“invalid code”怎么办的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: php 接收 oc 图片上传,php y
- 下一篇: php error 2,一起搞懂PHP的