微信小程序登录 获取openId和unionId

/ java / 没有评论 / 509浏览

微信小程序登录

登录流程

alt

小程序端用wx.login获取登录凭证code

  1. 小程序端 wx.login 获取code 并 wx.request 提交 code 给己方服务器
  2. 服务器 提交Appid + appSecret + code 到微信方服务器 获取 openid, sessionKey, unionId
属性类型说明
codestring用户登录凭证(有效期五分钟)。开发者需要在开发者服务器后台调用 auth.code2Session,使用 code 换取 openid 和 session_key 等信息
wx.login({
      success: res => {
        // 发送 res.code 到后台换取 openId, sessionKey, unionId
        console.log('code:', res.code);
        wx.getUserInfo({
          success: res1 => {
            wx.request({
              url: this.globalData.url + '/wechat/user/login',
              method: "POST",
              data: {
                code: res.code,
                userName: res1.userInfo.nickName,
                avatar: res1.userInfo.avatarUrl
              },
              success: res2 => {
                if (res2.data.code == "200") {
                  console.log('data:', res2.data.data);
                  this.globalData.openId = res2.data.data.openId
                  console.log('openId:', this.globalData.openId);
                  console.log('token:', res2.data.data.token);
                }
              }
            })
          }
        })
      }
    })

获取openId, sessionKey, unionId

这是一个 HTTPS 接口,开发者服务器使用登录凭证 code 获取 session_key 和 openid。session_key 是对用户数据进行加密签名的密钥。为了自身应用安全,session_key 不应该在网络上传输。

接口地址:

https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code
属性类型说明
APPIDString小程序appId
SECRETString小程序appSecret
codeString登录时获取的code

获取unionId

alt

需要到开放平台绑定统一主体

alt