Cloud.checkLogin(options: Object): Promise<Object>

支持端:Web 1.1.0

web 中检查登录状态

参数

options: Object

属性类型默认值必填说明
providerstring授权提供方,必填 OfficialAccount (公众号)
appidstring公众号 AppID
ignoreUrlstringfalse检查登录态时是否忽略 URL 上的 token
accessTokenstring手动提供要使用的 accessToken
refreshTokenstring手动提供要使用的 refreshToken

返回值

Promise.<Object>

result

属性类型说明
loggedInstring是否已登录
cloudIDstring开放数据 ID,如已登录,且网页授权方式不是 snsapi_base,则会返回此字段

使用说明

检查登录,入参字段必传 provider 和 appid,还有可选字段 ignoreUrl, accessToken 和 refreshToken。调用 checkLogin 时会依次尝试从这几个地方拿 accessToken 和 refreshToken:

  1. 尝试从入参拿
  2. 如果入参没有,且 ignoreUrl 不等于 true,则尝试从 URL 拿
  3. 如果 URL 没有,则尝试从本地存储拿 获取用户信息*

checkLogin 如果检查登录成功,且网页授权方式不是 snsapi_base,则会同时返回 cloudID 字段,该字段包含了网页授权 scope 对应的开放数据的云 ID,可以通过调用云函数获取对应的开放数据。例如如果授权 scope 为 snsapi_userinfo,则可以通过此方式获取用户信息。

示例代码

  1. const { loggedIn, cloudID } = await cloud.checkLogin({
  2. provider: 'OfficialAccount',
  3. appid: '公众号 AppID',
  4. })