微信登录说明

在多端应用中,开发者可通过如下 3 个 api 实现微信登录:

接口名称功能介绍其他说明
wx.login- 该接口用于在 App 中跳转至小程序进行登录,登录后再返回 App
- 该接口返回的 jscode ,可通过小程序的 jscode2sessionopen in new window 接口获取用户在小程序中的 openid 以及 unionID(如果该小程序绑定于微信开放平台账号)
- 该接口只适用于开发版,不可作为正式版解决方案
- 需先注册微信开放平台移动应用账号
- 可在移动应用助手中进行测试
wx.miniapp.login- 该接口是移动应用微信登录open in new window功能的封装,用户前往微信 App 授权后即可获取code
- 该接口返回的 code ,可通过移动应用的/sns/oauth2/access_tokenopen in new window 接口获取用户在 App 中的 openid 以及 unionID
- 通过 unionID 可以将用户在 App 上的身份和小程序身份关联起来
- 需先注册微信开放平台移动应用账号
- 不可在移动应用助手中进行测试,请构建安装包至真机进行测试
wx.weixinAppLogin- 该接口是基于移动应用微信登录open in new window功能结合多端身份管理open in new window封装的,用户前往微信 App 授权后即可获取 code
- 该接口返回的 code ,可通过多端身份管理的code2Verifyinfoopen in new window 接口获取用户在 App 中的 openid
- 基于该接口进行微信登录,可在多端应用中使用云开发的能力
- 需先注册微信开放平台移动应用账号
- 需开通多端身份管理功能
- 不可在移动应用助手中进行测试,请构建安装包至真机进行测试

一、注册移动应用账号

  • 3 个接口均需开发者先注册微信开放平台移动应用账号,如果已有移动应用账号,则可跳过此步骤;如尚未有移动应用账号,可参考此章节步骤完成创建以及审核。

1、注册微信开放平台账号

2、创建移动应用账号

  • 登录微信开放平台open in new window,然后前往「管理中心-移动应用」
  • 点击「创建移动应用」,然后填写移动应用名称、简介、官网、图标等基本信息以及开发信息,然后提交审核即可
  • 等待审核通过后,即可在「管理中心-移动应用-应用详情」中查看该移动应用的 AppID 信息 (调用接口时需用到)

二、wx.miniapp.login

1、使用说明

  • wx.miniapp.login 基于 OpenSDK,关联的是微信开放平台移动应用 AppID,最后获取的是用户在 App 中的 openid
  • 如果需要关联小程序的 openid 信息,可将小程序绑定在微信开放平台中,从而获取 unionID,通过 unionID 将移动应用和小程序应用关联起来。
  • 前往查看接口详情

2、初始化配置

使用微信开放能力前,需要先完成初始化配置

3、调用示例

示例:


// login
wx.miniapp.login({
    success: (res) => {
        console.log('login success:', res.code)
    }
})

三、wx.login

1、使用说明

2、使用步骤

  • 在微信开发者工具中使用“升级为多端项目”能力的时候,工具会帮开发者自动生成 app.miniapp.json 这个文件,并填入要跳转的微信小程序对应的信息。

  • app.miniapp.json 文件在小程序项目 miniprogramRoot 目录下配置,内容已自动配置完成,开发者无需调整 :

{
    "adapteByMiniprogram": {
        "userName": "xxxx", // 小程序原始id(不是小程序appid)// 且该字段默认会填好,开发者无需调整 
    }
}

  • 此外,当多端应用在调用 wx.login 接口,其中的基础库已经进行了兼容逻辑的实现,让开发者无需感知变化。跳转到目标微信小程序的特定页面,特定页面内部会执行,并执行微信小程序内 wx.login 接口,最后将返回的code内容传回多端小程序。最后在多端小程序的 wx.login 的 success 接口中返回微信小程序传回的 code。从而让开发者继续按照原来的方式调用 wx.login,无需改变业务逻辑。

四、wx.weixinAppLogin