登录实现并获取到用户唯一标识

正文:

功能:登录实现并获取到用户唯一标识

官方文档地址:可以先看完我的文章再看官方地址

实现步骤:1.调用微信API wx.login()得到code  2.把得到的code传给后端,在后端请求

https://api.weixin.qq.com/sns/jscode2session

3.后端把得到的用户唯一标识(openid)传给前端并在前端保存

接下来就直接把完整的流程写出来了,不再拆分。

小程序端代码:

 
  1. wx.login({

  2. success: function (res) {

  3. if (res.code) {

  4. let url = config.HTTP_URL + '/v1/user/login'

  5. let data = {

  6. code: res.code

  7. }

  8. util.request(url, 'post', data, '正在加载数据', function (res) {

  9. console.log('登录接口返回结果:' + JSON.stringify(res.data))

  10. if (res.data.openid){

  11. wx.setStorageSync('openid', res.data.openid)

  12. }

  13. }

  14. })

  15. }

  16. }

  17. })

服务器操作说明:获取code请求微信小程序官方接口

接口地址:

https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code

请求参数:

参数 必填 说明
appid 小程序唯一标识
secret 小程序的 app secret
js_code 登录时获取的 code
grant_type 填写为 authorization_code

返回参数:

参数 说明
openid 用户唯一标识
session_key 会话密钥
unionid 用户在开放平台的唯一标识符。本字段在满足一定条件的情况下才返回。具体参看UnionID机制说明

返回说明:

 
  1. //正常返回的JSON数据包

  2. {

  3. "openid": "OPENID",

  4. "session_key": "SESSIONKEY",

  5. "unionid": "UNIONID"

  6. }

  7. //错误时返回JSON数据包(示例为Code无效)

  8. {

  9. "errcode": 40029,

  10. "errmsg": "invalid code"

  11. }

猜你喜欢

转载自blog.csdn.net/ZNYSYS520/article/details/81901617