# 登录

# 接口说明

用于执行登录并获取SDK开放平台用户信息。

sdkInstance.login(options);

注意事项

一般情况下,流程上要求需先执行SDK登录,再显示游戏服列表及"开始游戏"按钮,当玩家点击"开始游戏"后再触发后续游戏服登录及创角;若游戏本身并无游戏服列表选择界面或"开始游戏"按钮,此注意事项可忽略!

# 参数说明

参数说明如下表所示:

选项 类型 必填 默认值 说明
success function -- 登录成功的回调函数,返回SDK开放平台用户信息
fail function -- 登录失败的回调函数,返回错误信息
complete function -- 登录完成的回调函数,成功或失败均会调用

# 返回值说明

WARNING

返回值格式:JSON 格式。

选项 类型 说明
code number 登录请求状态码,为 0 时表示登录成功,其他非 0 状态码均表示登录失败
data object / null 登录成功时返回SDK开放平台用户信息,失败时返回 null
    data.accountId number 账号ID
    data.accountName string 账号名称
    data.accountView string 账号缩略
    data.expireTimestamp number 登录态过期时间,秒级时间戳
    data.loginTimestamp number 登录时间,秒级时间戳
    data.loginType number 登录类型
    data.region number 所属地区,1 表示中国大陆,0 表示港澳台及海外
    data.sign string 签名(本地验签使用)
    data.token string 登录token
    data.userExtraInfo object 用户扩展信息,用于存储用户于第三方渠道侧的信息
        data.userExtraInfo.openId string 用户在抖音侧的唯一标识(openId)
message string 登录成功或失败时的相应描述信息

登录成功返回示例

{
  "code": 0,
  "data": {
    "accountId": 1234588888,
    "accountName": "1234588888",
    "accountView": "123****88",
    "expireTimestamp": 1722913583,
    "loginTimestamp": 1723777583,
    "loginType": 6,
    "region": 1,
    "sign": "e540f026d28ebae445e6f423eb72584e",
    "token": "dd6657069341488caf951a874dae7971",
    "userExtraInfo": {
      "openId": "xxxxxxxxxxxxxxxxxxxxxxxxxxxx"
    }
  },
  "message": ""
}

登录失败返回示例

{
  "code": 600003,
  "data": null,
  "message": "request:fail interrupted"
}

# 示例代码

注:示例代码中的参数或选项均为演示数据,仅供参考,谢谢!

sdkInstance.login({
  success: function(response) {
    console.log(response.code); // 接口响应状态码,此处为0,表示登录成功
    console.log(response.data); // 用户信息
    console.log(response.data.accountId); // 账号ID
    console.log(response.data.loginType); // 登录类型
    console.log(response.data.token); // 登录token
    console.log(response.data.userExtraInfo.openId); // 用户抖音唯一标识(openId)
  },
  fail: function(error) {
    console.log(error); // 登录失败的错误信息,error.code为非0状态码,error.message为错误消息;登录失败时不会返回用户信息,不应在此处尝试获取用户账号ID等数据
  },
  complete: function(result) {
    // 接口响应状态码为0时,表示登录成功
    if (result.code == 0) {
      console.log(result.data);
    }
    // 其他非0状态码,表示登录失败,登录失败时不会返回用户信息,不应在此处尝试获取用户账号ID等数据
    else {
      console.log(result.message);
    }
  }
});

# 登录验证

登录成功后,需获取返回值 response.data 中的 accountIdloginTypetoken 等数据,并发送给游戏服务器,由游戏服务器按照《服务端对接 > 登录支付 > 登录验证》文档说明调用验签接口进行登录验证!

注意事项

验签接口域名根据所属发行企业或主体的不同而不同,请勿擅自使用,详情请咨询相关运营人员或SDK服务端开发:邓泳辉!

Last Updated: 2025/2/19 16:42:24