登录实现并获取到用户唯一标识
正文:
功能:登錄實(shí)現(xiàn)并獲取到用戶唯一標(biāo)識(shí)
官方文檔地址:可以先看完我的文章再看官方地址
實(shí)現(xiàn)步驟:1.調(diào)用微信API wx.login()得到code? 2.把得到的code傳給后端,在后端請(qǐng)求
https://api.weixin.qq.com/sns/jscode2session3.后端把得到的用戶唯一標(biāo)識(shí)(openid)傳給前端并在前端保存
接下來就直接把完整的流程寫出來了,不再拆分。
小程序端代碼:
wx.login({
success: function (res) {
if (res.code) {
let url = config.HTTP_URL + '/v1/user/login'
let data = {
code: res.code
}
util.request(url, 'post', data, '正在加載數(shù)據(jù)', function (res) {
console.log('登錄接口返回結(jié)果:' + JSON.stringify(res.data))
if (res.data.openid){
wx.setStorageSync('openid', res.data.openid)
}
}
})
}
}
})
服務(wù)器操作說明:獲取code請(qǐng)求微信小程序官方接口
?
接口地址:
https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code請(qǐng)求參數(shù):
| appid | 是 | 小程序唯一標(biāo)識(shí) |
| secret | 是 | 小程序的 app secret |
| js_code | 是 | 登錄時(shí)獲取的 code |
| grant_type | 是 | 填寫為 authorization_code |
返回參數(shù):
| openid | 用戶唯一標(biāo)識(shí) |
| session_key | 會(huì)話密鑰 |
| unionid | 用戶在開放平臺(tái)的唯一標(biāo)識(shí)符。本字段在滿足一定條件的情況下才返回。具體參看UnionID機(jī)制說明 |
返回說明:
//正常返回的JSON數(shù)據(jù)包
{
"openid": "OPENID",
"session_key": "SESSIONKEY",
"unionid": "UNIONID"
}
//錯(cuò)誤時(shí)返回JSON數(shù)據(jù)包(示例為Code無效)
{
"errcode": 40029,
"errmsg": "invalid code"
}
總結(jié)
以上是生活随笔為你收集整理的登录实现并获取到用户唯一标识的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信小程序中使用圆形倒计时实例
- 下一篇: 微信小程序获取openid