跳到主要内容

Web

本文旨在介绍如何设置 Twitter 身份验证,让您的网页可以使用 Player Network 登录鉴权服务通过 Twitter 渠道登录。

前提条件

1. 在 Twitter 开发者网站上设置游戏

1. 创建 Twitter 应用

说明

建议使用腾讯邮箱注册账号,这样可以提高后期申请的成功率。

根据提示在 Twitter 开发者网站 上注册团队开发者账号或个人开发者账号。有了开发者账号,您就可以在 Developer Portal 上创建应用程序。

  1. 创建一个新项目。

    图片:Create Twitter project

  2. 选择一个用例。点击 Next

    图片:Twitter project use case

  3. 输入项目描述。点击 Next

    图片:Twitter project description

  4. 选择应用环境。点击 Save

    图片:Twitter application environment

  5. 输入应用程序名称。点击 Save

    图片:Twitter app name

  6. 创建应用程序后,获取 API key and API secret key。存储此信息。点击 App Settings

    图片:Twitter API key and API secret key

  7. 点击 Set up

    图片:Twitter setup

  8. 启用 OAuth2.0 和 OAuth1.0a。在应用程序类型中选择 Web App

    图片:Twitter OAuth

  9. 在应用程序权限中选择 Read And Write

    图片:Twitter app permissions

  10. 为回调 URL 输入测试环境和生产环境 URL。您将进入游戏的官方网站。点击 Save

警告

如果游戏已经上线,则不能删除现有的回调 URL,只能添加。

适用于 Player Network SDK V1.15 及更早版本的 Android/iOS 平台

https://image.intlgame.com/v2/test/jssdk/twitterlogincallback.html
https://image.intlgame.com/v2/release/jssdk/twitterlogincallback.html

适用于 Player Network SDK V1.16 及更高版本的 Android/iOS 平台和 Windows 平台

https://test-common-web.intlgame.com/jssdk/twitterlogincallback.html
https://common-web.intlgame.com/jssdk/twitterlogincallback.html

TWITTER_CONSUMER_USE_SDK 为1时,要使用 INTLConfig.ini 中的 Twitter SDK 登录,请添加以下回调 URL:

twittersdk://
twitterkit-{API Key}://

{API Key} 需要替换为游戏的 API Key,不包括大括号 {}。

图片:Twitter callback URLs

2. 检索应用程序信息

您需要 Twitter App ID 和密码才能在 Player Network 添加 Twitter 登录渠道。

图片:Twitter app information

  1. 获取 Player Network 控制台登录账号
  2. 为游戏创建新项目,或加入已有项目
  3. 在 Player Network 控制台添加 Twitter 为业务的登录鉴权方式
注意

更多关于其他第三方渠道接入 SDK 的信息,请参见 JavaScript SDK

步骤1:引⼊ JavaScript SDK

目前已支持 npm 包方式和 CDN 方式。

$ npm install @intlsdk/account-api
// SDK production version package
<script src="https://common-web.intlgame.com/sdk-cdn/account-api/latest/index.umd.js"></script>

步骤2:使用 SDK

警告

在集成测试时,将 env 设置为测试环境;项目上线时,将 env 设置为相应的正式环境。

const accountApi = new IntlgameAccountApi({
env: "test", // SDK environment
gameID: 11,
});
参数类型描述备注
envstringSDK 环境
更多信息,请参见 获取部署集群信息
必填
gameIDnumberPlayer Network 游戏唯一标识 ID必填

步骤3:实现网页登录

实例化 accountApi 组件后,调用 thirdAuthorize 接口申请 Twitter 渠道的访问令牌和访问密钥。

accountApi.thirdAuthorize({
third_type: 'twitter',
}).then(
(res) => {
console.log(res);
});

当 Twitter 返回访问令牌和密钥后,调用 intlAuthorize 接口获取 Player Network SDK OpenID 和令牌登录网站。

accountApi.intlAuthorize({
third_type: 'twitter',
channel_info: {
oauth_token: "EAAI2lTrXAZBwBAC"
oauth_secret: "xxxx"
}
}).then(
(res) => {
console.log(res);
});

调用 intlLogout 接口登出网站。

accountApi.intlLogout({
token: '4567xsdfsd',
openid: 'xxxxxxxx',
channel_id: 9,
}).then(
(res) => {
console.log(res);
});