# code2Verifyinfo

登录凭证校验。通过 wx.xxxLogin 获得临时登录凭证 (code) 后,传到开发者服务器,开发者服务器调用 code2verifyinfo 接口获取用户标识信息,可以用于构建自定义登录态。

# 调用方式

GET https://api.weixin.qq.com/donut/code2verifyinfo

# 请求参数

属性 类型 说明
appid string 多端应用 ID,在多端应用控制台应用详情页可以查看;不是小程序 Appid,也不是移动应用 Appid
appsecret string 多端应用secret,在多端应用控制台应用详情页可以查看;不是小程序 secret,也不是移动应用 secret
code string 临时登录凭证,可通过 wx.weixinAppLogin、wx.weixinMiniProgramLogin、wx.phoneSmsLogin、wx.appleLogin、本机号码一键登录 button 获取
grant_type string 授权类型:,固定值为"authorization_code"
{
  appid: 'aaa',
  appsecret: 'bbb',
  code: 'ccc',
  grant_type: 'authorization_code'
}

# 返回参数

属性 类型 说明
errcode number 错误码
errmsg string 错误提示
login_info object 登录信息
user_info object 用户标识信息

# 错误码 errcode

errCode 说明
-1 system error
10001000 code过期
10001001 code错误
10001002 appid错误
10001003 appsecret错误
10001004 grant_type错误

# 登录信息 login_info

属性 类型 说明
type string 登录方式: weixinApp, weixinMiniProgram, phoneSms, apple, phoneOneClick
login_time number 登录时间

# 用户标识信息 user_info

属性 类型 说明
user_id string 多端用户ID
openapp_info object 微信移动应用信息
miniprogram_info object 微信小程序信息
phone_info object 手机号信息
apple_info object 苹果信息

# 微信移动应用信息 openapp_info

  • 当 type 是 weixinApp 的时候返回 openapp_info
属性 类型 说明
appid string 微信移动应用appid
openid string 微信移动应用对应的openid
unionid string unionid
headimgurl string 用户头像,最后一个数值代表正方形头像大小(有 0、46、64、96、132 数值可选,0 代表640*640正方形头像),用户没有头像时该项为空
nickname string 普通用户昵称

# 微信小程序信息 miniprogram_info

  • 当 type 是 weixinMiniProgram 的时候返回 miniprogram_info
属性 类型 说明
appid string 微信小程序appid
openid string 微信小程序对应的openid
unionid string unionid,小程序需要绑定在微信开放平台才会返回;否则为空

# 手机号信息 phone_info

  • 当 type 是 phoneSms 和 phoneOneClick 的时候返回 phone_info
属性 类型 说明
phone string 手机号

# 苹果信息 apple_info

  • 当 type 是 apple 的时候返回 apple_info
属性 类型 说明
bundleid string 苹果应用id
apple_user_id string 苹果用户id

# 返回示例

{
  errcode: 0,
  login_info: {
    type: 'weixinApp',
    login_time: 12345678,
    appid: 'aaa',
  },
  user_info: {
    user_id: 'xxx',
    openapp_info: {
      appid: 'bbb',
      openid: 'ccc',
      unionid: 'ddd',
      headimgurl: 'HEADIMGURL',
      nickname: 'NICKNAME'
    },
    phone_info: {
      phone: '137xxxxxxx'
    },
    apple_info: {
      bundleid: 'eee',
      apple_user_id: 'fff'
    },
    miniprogram_info: {
      appid: 'bbb',
      openid: 'ccc',
      unionid: 'ddd'
    },
  }
}

# 账号绑定说明

# 账号之间没有绑定

  • 当 type 是 weixinMiniProgram(小程序登录) 的时候返回 miniprogram_info
  • 当 type 是 weixinApp(微信登录) 的时候返回 openapp_info
  • 当 type 是 phoneSms(手机验证码登录) 和 phoneOneClick(一键本机号码登录) 的时候返回 phone_info
  • 当 type 是 apple 的时候返回 apple_info

# 账号之间有绑定

  • 例如,小程序登录(wx.weixinMiniProgramLogin)后通过 wx.miniapp.bindPhone 引导用户完成了手机号绑定,那么,当 type 是 weixinMiniProgram(小程序登录) 的时候会同时返回 miniprogram_info 和 phone_info
  • 同理,手机登录(wx.phoneSmsLogin)后通过 wx.miniapp.bindWeixin 引导用户完成了微信绑定,那么,当 type 是 phoneSms(手机验证码登录) 的时候会同时返回 phone_info 和 openapp_info
  • 以此类推,不同的登录方式之间可以引导进行账号的绑定;code2Verifyinfo 接口会依据 type 以及已绑定的账号类型情况而同时返回对应的信息

# 常问问题