如果对您有帮助,请关注我,欢迎加入微信小程序开发交流QQ群(173683866),有问题也可以加群问我获取问群里的大神!!!
功能:登录实现并获取到用户唯一标识
官方文档地址:可以先看完我的文章再看官方地址
实现步骤:1.调用微信API wx.login()得到code 2.把得到的code传给后端,在后端请求
https://api.weixin.qq.com/sns/jscode2session3.后端把得到的用户唯一标识(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,'正在加载数据',function (res) {
console.log('登录接口返回结果:' + JSON.stringify(res.data))
if (res.data.openid){
wx.setStorageSync('openid',res.data.openid)
}
}
})
}
}
})服务器操作说明:获取code请求微信小程序官方接口
接口地址:
https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code
请求参数:
参数必填说明appid是小程序唯一标识secret是小程序的 app secretjs_code是登录时获取的 codegrant_type是填写为 authorization_code返回参数:
参数说明openid用户唯一标识session_key会话密钥unionid用户在开放平台的唯一标识符。本字段在满足一定条件的情况下才返回。具体参看UnionID机制说明返回说明:
//正常返回的JSON数据包
{
"openid": "OPENID",
"session_key": "SESSIONKEY",
"unionid": "UNIONID"
}
//错误时返回JSON数据包(示例为Code无效)
{
"errcode": 40029,
"errmsg": "invalid code"
}以上就是登录获取openid和会话秘钥的完整流程实现,希望能对你们有所帮助,对微信小程序有兴趣的可以关注我或者加入我的微信小程序开发交流群(173683895) 禁止闲扯和广告。