ตรวจสอบ token¶
ใช้โทเค็น Player ID และรหัสอุปกรณ์จาก PlayerInfo ที่ส่งคืนหลังจากการเข้าสู่ระบบสำเร็จจากไคลเอ็นต์แอป เพื่อตรวจสอบโทเค็นของผู้ใช้บนเซิร์ฟเวอร์แอป Verify token API ทำงานผ่านการสื่อสารแบบเซิร์ฟเวอร์ถึงเซิร์ฟเวอร์ โดยที่เซิร์ฟเวอร์แอปจะเรียกใช้เซิร์ฟเวอร์การตรวจสอบสิทธิ์ Hive โดยตรง หากแอปไม่อนุญาตให้มีการเข้าสู่ระบบซ้ำ คุณสามารถจัดการโทเค็นที่ผ่านการตรวจสอบแล้ว หรือใช้การจัดการเซสชันโดยใช้คีย์เซสชันของแอปเอง
URL คำขอ¶
| URL การผลิต | https://auth.qpyou.cn/v2/game/token/get-token |
|---|---|
| URL สภาพแวดล้อมแบบกระจาย | https://auth.globalwithhive.com/v2/game/token/get-token |
| URL แซนด์บ็อกซ์ | https://sandbox-auth.qpyou.cn/v2/game/token/get-token |
| วิธี HTTP | POST |
| Content-Type | application/json |
| รูปแบบข้อมูล | JSON |
Note
เซิร์ฟเวอร์การตรวจสอบสิทธิ์ Hive ได้รับการกำหนดค่าในสภาพแวดล้อมแบบกระจายเพื่อเตรียมพร้อมสำหรับความล้มเหลวหรือการสื่อสารเครือข่ายที่ไม่เสถียร
หากเกิดความล้มเหลวขณะสื่อสารกับโฮสต์เซิร์ฟเวอร์การตรวจสอบสิทธิ์ หรือหากเกินระยะหมดเวลาที่กำหนดไว้บนเซิร์ฟเวอร์แอป เซิร์ฟเวอร์แอปจะต้องเรียก URL ของสภาพแวดล้อมแบบกระจายโดยตรง (URL ทางเลือก)
ส่วนหัวของคำขอ¶
| ชื่อฟิลด์ | คำอธิบาย | ประเภท | จำเป็น |
|---|---|---|---|
| Authorization | โทเค็นผู้ใช้ถูกส่งคืนหลังจากการเข้าสู่ระบบไคลเอนต์เกมสำเร็จ (PlayerInfo.token) | String | Y |
| X-Access-Token | โทเค็นผู้ใช้ถูกส่งคืนหลังจากการเข้าสู่ระบบไคลเอนต์เกมสำเร็จ OAuth 2.0 โทเค็นการเข้าถึงสำหรับการยืนยันตัวตนของผู้เล่น | String | Y |
| ISCRYPT | ข้อมูลถูกเข้ารหัสหรือไม่ (0 = ไม่ได้เข้ารหัส; ให้ผ่าน 0 เสมอ) | Integer | Y |
| ## ขอเนื้อความ | |||
| ชื่อฟิลด์ | คำอธิบาย | ประเภท | จำเป็น |
| --- | --- | --- | --- |
| appid | รหัสแอป | String | Y |
| did | รหัสอุปกรณ์ส่งคืนหลังจากเข้าสู่ระบบสำเร็จ | String | Y |
| player_id | ID ผู้เล่นยืนยันตัวตนถูกส่งคืนหลังจากเข้าสู่ระบบสำเร็จ | BigInteger | Y |
| include_fields | รายการฟิลด์ รายการฟิลด์เพิ่มเติม สำหรับขอข้อมูลเพิ่มเติมในการตอบกลับ | Array | N |
Note
คุณสามารถเลือกส่งคืนข้อมูลเพิ่มเติมผ่านพารามิเตอร์ include_fields เมื่อขอการยืนยันโทเค็น การตอบสนองจะรวมข้อมูลที่เกี่ยวข้องภายใต้ data ตามค่าฟิลด์ที่ระบุในอาร์เรย์ include_fields
รายการฟิลด์เพิ่มเติม¶
| ชื่อฟิลด์ | คำอธิบาย | ประเภท |
|---|---|---|
| is_blocked | ไม่ว่าการใช้งานจะถูกจำกัดหรือไม่ (true - ถูกจำกัด, false - ปกติ) | Boolean |
| is_device_registered | ไม่ว่าจะใช้การจัดการอุปกรณ์หรือไม่ (true - ใช้แล้ว, false - ไม่ได้ใช้) | Boolean |
| join_timestamp | player_id วันที่ลงทะเบียน (Unix Timestamp) | Long |
| china_pi_no | หมายเลขยืนยันชื่อจริงของจีน ส่งคืน null หากการยืนยันชื่อจริงยังไม่เสร็จสิ้น | String / null |
| ## เนื้อหาการตอบสนอง | ||
| ชื่อฟิลด์ | คำอธิบาย | ประเภท |
| --- | --- | --- |
| result_code | รหัสตอบกลับ, 0=การตรวจสอบความถูกต้องสำเร็จ | Integer |
| result_msg | ข้อความผลลัพธ์ | String |
| token_validation | ผลการตรวจสอบ JWT (ข้อผิดพลาดการตรวจสอบ JWT) | Object |
| token_validation.result_code | รหัสผลลัพธ์การตรวจสอบ JWT | Integer |
| token_validation.result_msg | ข้อความผลการตรวจสอบ JWT | String |
| data | อ็อบเจ็กต์ที่มีข้อมูลที่ระบุใน include_fields ในคำขอ | Object |
รหัสตอบกลับ¶
| ค่าโค้ด | คำอธิบาย |
|---|---|
| 0 | ความสำเร็จ |
| 2300 | ผู้ใช้ที่คืนเงินอาจมีการชำระเงินคืน |
| 4000 | พารามิเตอร์ไม่ถูกต้อง |
| 4001 | ขอข้อผิดพลาด JSON |
| 2499 | การตรวจสอบ JWT ล้มเหลว (ดู token_validation) |
| 5000 | ข้อผิดพลาดฐานข้อมูล |
| 6000 | แอพไม่ถูกต้อง |
| 6001 | ข้อผิดพลาดโทเค็น IdP |
| 7000 | โทเค็นไม่ถูกต้อง |
| 7001 | ไม่มีค่าโทเค็นในส่วนหัว |
| 9999 | ข้อผิดพลาดที่ไม่รู้จัก |
| ## ขอตัวอย่าง | |
รวม_ฟิลด์¶
{
"appid": "com.com2us.hivesdk.normal.freefull.apple.global.ios.universal",
"did": "255764404509548",
"player_id": 10000000000,
"include_fields": ["is_blocked", "is_device_registered", "join_timestamp", "china_pi_no"]
}
ตัวอย่างการตอบกลับ¶
ความสำเร็จ¶
{
"result_code": 0,
"result_msg": "SUCCESS",
"token_validation": {
"result_code": 0,
"result_msg": "success"
}
}
การตรวจสอบ JWT ล้มเหลว¶
{
"result_code": 2499,
"result_msg": "JWT validation failed. See token_validation for details.",
"token_validation": {
"result_code": 2408,
"result_msg": "The access token is expired. Please refresh your token."
}
}
รวม_ฟิลด์¶
{
"result_code": 0,
"result_msg": "SUCCESS",
"token_validation": {
"result_code": 0,
"result_msg": "success"
},
"data": {
"is_blocked": false,
"is_device_registered": false,
"join_timestamp": 1495594605,
"china_pi_no": null
}
}
Note
เมื่อการตรวจสอบ JWT ล้มเหลว คุณสามารถตรวจสอบข้อมูลข้อผิดพลาดโดยละเอียดได้ในฟิลด์ token_validation สำหรับรายละเอียด โปรดดู รหัสข้อผิดพลาดการตรวจสอบ JWT