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

支持端:Web 1.1.0

web 中检查登录状态

参数

options: Object

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

返回值

Promise.<Object>

result

属性 类型 说明
loggedIn string 是否已登录
cloudID string 开放数据 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,则可以通过此方式获取用户信息。

示例代码

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