Web
本文旨在介绍如何设置 Steam 身份验证,让您的网页可以使用 Player Network 登录鉴权服务通过 Steam 渠道登录。
前提条件
注意
Steam Web API 的请求限制为每天 100,000 次。有关 Steam 请求限制的更多信息,请参见 Steam Web API 使用条款。
调用 Steam 登录时,必须确保您的主机上已安装 Steam 客户端软件,并且您已登录 Steam。
- 在 Steam 官方网站 申请开发者账号,设置游戏并获取游戏的 App ID。
- 获取 Player Network 控制台登录账号。
- 为游戏创建新项目,或加入已有项目。
- 在 Player Network 控制台添加 Steam 为业务的登录鉴权方式。
注意
更多关于其他第三方渠道接入 SDK 的信息,请参见 JavaScript SDK。
步骤1:引⼊ JavaScript SDK
目前已支持 npm
包方式和 CDN
方式。
- 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,
});
参数 | 类型 | 描述 | 备注 |
---|---|---|---|
env | string | SDK 环境 更多信息,请参见 获取部署集群信息。 | 必填 |
gameID | number | Player Network 游戏唯一标识 ID | 必填 |
步骤3:实现网页登录
实例化 accountApi
组件后,调用 thirdAuthorize
接口申请 Steam web 登录所需的属性。有关所需属性的详细信息,请参见 Steam 渠道信息说明。
accountApi.thirdAuthorize({
third_type: 'steam',
}).then(
(res) => {
console.log(res);
});
当 Steam 返回属性后,调用 intlAuthorize
接口获取 Player Network SDK OpenID 和令牌登录网站。
accountApi.intlAuthorize({
third_type: 'steam',
channel_info: {
openid.ns: "EAAI2lTrXAZBwBAC",
openid.mode: "EAAI2lTrXAZBwBAC",
openid.op_endpoint: "EAAI2lTrXAZBwBAC",
openid.claimed_id: "EAAI2lTrXAZBwBAC",
openid.identity: "EAAI2lTrXAZBwBAC",
openid.return_to: "EAAI2lTrXAZBwBAC",
openid.response_nonce: "EAAI2lTrXAZBwBAC",
openid.assoc_handle: "EAAI2lTrXAZBwBAC",
openid.signed: "EAAI2lTrXAZBwBAC",
openid.sig: "EAAI2lTrXAZBwBAC",
}
}).then(
(res) => {
console.log(res);
});
调用 intlLogout
接口登出网站。
accountApi.intlLogout({
token: '4567xsdfsd',
openid: 'xxxxxxxx',
channel_id: 21,
}).then(
(res) => {
console.log(res);
});