From da0476968e7079760c65751d4b99b2e1decad1f4 Mon Sep 17 00:00:00 2001 From: Kamisato-Ayaka-233 <2627706725@qq.com> Date: Sun, 10 Sep 2023 17:06:49 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90P=E3=80=91=E5=A2=9E=E5=8A=A0=E5=AF=B9L?= =?UTF-8?q?Token=E5=92=8CSToken=E7=9A=84=E4=B8=8D=E5=90=8C=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E7=9A=84=E8=AF=B4=E6=98=8E=20=E3=80=90A=E3=80=91?= =?UTF-8?q?=E2=80=9C=E7=94=A8=E6=88=B7=E6=A0=87=E8=AF=86=E7=AC=A6=E2=80=9D?= =?UTF-8?q?=E6=96=87=E6=A1=A3=E5=A2=9E=E5=8A=A0=E2=80=9C=E9=80=9A=E8=BF=87?= =?UTF-8?q?SToken=E8=8E=B7=E5=8F=96LToken=EF=BC=88V1=EF=BC=89=E2=80=9D?= =?UTF-8?q?=E5=92=8C=E2=80=9C=E9=80=9A=E8=BF=87SToken=E8=8E=B7=E5=8F=96LTo?= =?UTF-8?q?ken=EF=BC=88V1=EF=BC=89=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hoyolab/user/token.md | 133 ++++++++++++++++++++++++++++++++++++++-- other/authentication.md | 4 +- 2 files changed, 130 insertions(+), 7 deletions(-) diff --git a/hoyolab/user/token.md b/hoyolab/user/token.md index a1f5096..b61f02f 100644 --- a/hoyolab/user/token.md +++ b/hoyolab/user/token.md @@ -1,11 +1,13 @@ # 用户Token - [Token](#token) - - [通过Login Ticket获取SToken和LToken](#通过login-ticket获取stoken和ltoken) + - [通过Login Ticket获取SToken(V1)和LToken(V1)](#通过login-ticket获取stokenv1和ltokenv1) - [通过SToken获取Cookie Token](#通过stoken获取cookie-token) - - [通过Game Token获取SToken](#通过game-token获取stoken) + - [通过Game Token获取SToken(V1)](#通过game-token获取stokenv1) - [通过Game Token获取Cookie Token](#通过game-token获取cookie-token) - [通过Cookie Token获取Hk4e Token](#通过cookie-token获取hk4e-token) + - [通过SToken(V1)获取SToken(V2)](#通过stokenv1获取stokenv2) + - [通过SToken获取LToken(V1)](#通过stoken获取ltokenv1) - [Action Ticket](#action-ticket) - [通过SToken获取Action Ticket](#通过stoken获取action-ticket) - [Auth Key](#auth-key) @@ -16,7 +18,7 @@ ## Token -### 通过Login Ticket获取SToken和LToken +### 通过Login Ticket获取SToken(V1)和LToken(V1) **国服:** @@ -130,7 +132,7 @@ _请求方式:GET_ ``` -### 通过Game Token获取SToken +### 通过Game Token获取SToken(V1) **国服:** @@ -331,6 +333,127 @@ _请求方式:POST_ ``` +### 通过SToken(V1)获取SToken(V2) + +**国服:** + +_请求方式:POST_ + +> _需要验证请求头_ +> +> `x-rpc-app_id`:`bll8iq97cem8` + +> _需要验证Cookie_ +> +> SToken + +`https://passport-api.mihoyo.com/account/ma-cn-session/app/getTokenBySToken` + +**JSON返回:** + +根对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ---- | ---- | ---- | +| retcode | num | 返回码 | | +| message | str | 返回消息 | | +| data | obj | 该账号的SToken(V2)与部分账号个人信息 | 个人信息已隐藏 | + +`data`对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ---- | ---- | ---- | +| token | obj | 该账号的SToken(V2) | | +| user_info | obj | 部分账号个人信息 | 个人信息已隐藏 | +| need_realperson | bool | 待调查 | | +| realname_info | | 待调查 | | + +`data`对象→`token`对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ---- | ---- | ---- | +| token_type | num | 1 | | +| token | str | 该账号的SToken(V2) | | + +
+查看示例 + +```json +{ + "retcode": 0, + "message": "OK", + "data": { + "token": { + "token_type": 1, + "token": "***" + }, + "user_info": { + "aid": "317832114", + "mid": "******", + "account_name": "", + "email": "****", + "is_email_verify": 1, + "area_code": "+86", + "mobile": "****", + "safe_area_code": "", + "safe_mobile": "", + "realname": "***", + "identity_code": "************", + "rebind_area_code": "", + "rebind_mobile": "", + "rebind_mobile_time": "0", + "links": [], + "country": "" + }, + "realname_info": null, + "need_realperson": false + } +} +``` +
+ +### 通过SToken获取LToken(V1) + +**国服:** + +_请求方式:GET_ + +> _需要验证Cookie_ +> +> SToken + +`https://passport-api.mihoyo.com/account/auth/api/getLTokenBySToken` + +**JSON返回:** + +根对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ---- | ---- | ---- | +| retcode | num | 返回码 | | +| message | str | 返回消息 | | +| data | obj | 该账号的LToken(V1) | | + +`data`对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ---- | ---- | ---- | +| ltoken | str | 该账号的LToken(V1) | | + +
+查看示例 + +```json +{ + "retcode": 0, + "message": "OK", + "data": { + "ltoken": "******" + } +} +``` +
+ ## Action Ticket ### 通过SToken获取Action Ticket @@ -345,7 +468,7 @@ _请求方式:GET_ `https://api-takumi.mihoyo.com/auth/api/getActionTicketBySToken` -**JSON请求:** +**参数:** | 字段 | 类型 | 内容 | 备注 | | ---- | ---- | ---- | ---- | diff --git a/other/authentication.md b/other/authentication.md index 59d7d62..ed620a7 100644 --- a/other/authentication.md +++ b/other/authentication.md @@ -360,7 +360,7 @@ const final = `${t},${r},${ds}` // 最终结果 即`ltoken_v2`和`ltoken`。 -`ltoken_v2`和`ltoken`并不总是使用相同的值,多用于查询用户的游戏账号信息。 +`ltoken_v2`和`ltoken`并不总是使用相同的值,多用于查询用户的游戏账号信息。其被命名为“LToken(V1)”与“LToken(V2)”。 `ltoken_v2`必须与[`ltmid_v2`](#mihoyo-id)一起使用,`ltoken`必须与[`ltuid`](#account-id)一起使用。 @@ -380,7 +380,7 @@ const final = `${t},${r},${ds}` // 最终结果 #### MiHoYo ID -分为与[LToken](#ltoken)一起使用的`ltmid_v2`,和与[SToken](#stoken)一起使用的`mid` +分为与[LToken](#ltoken)一起使用的`ltmid_v2`,和与[SToken](#stoken)一起使用的`mid`。其被命名为“SToken(V1)”与“SToken(V2)”。 `ltmid_v2`和`mid`的值是相同,对应一个账号。