ข้ามไปที่เนื้อหา

ออกคีย์การยืนยันตัวตนแบบกำหนดเอง

ออกคีย์การตรวจสอบสิทธิ์ที่จำเป็นสำหรับการเชื่อมโยง IdP ที่กำหนดเอง (ผู้ให้บริการข้อมูลประจำตัว) ในแอป API 'ออกคีย์การตรวจสอบสิทธิ์แบบกำหนดเอง' ทำงานผ่านการสื่อสารแบบเซิร์ฟเวอร์ถึงเซิร์ฟเวอร์ โดยที่เซิร์ฟเวอร์แอปจะเรียกใช้เซิร์ฟเวอร์การตรวจสอบสิทธิ์ Hive โดยตรง เมื่อการโทรสำเร็จ คีย์การตรวจสอบสิทธิ์แบบกำหนดเองจะถูกส่งกลับในช่อง data.custom_auth_key ของการตอบกลับ คุณสามารถใช้คีย์นี้เพื่อเชื่อมโยง IdP ใหม่หรือเชื่อมโยง IdP กับ ID ผู้เล่น

URL คำขอ

URL การผลิต https://auth.qpyou.cn/v2/game/customauth/get-key
URL แซนด์บ็อกซ์ https://sandbox-auth.qpyou.cn/v2/game/customauth/get-key
วิธี HTTP POST
Content-Type application/json
รูปแบบข้อมูล JSON

## ส่วนหัวของคำขอ
ชื่อฟิลด์ คำอธิบาย
--- ---
X-Access-Token โทเค็นการเข้าถึง OAuth 2.0 สำหรับการตรวจสอบเซิร์ฟเวอร์เกม
(ดู การออก OAuth token)
ISCRYPT ข้อมูลถูกเข้ารหัสหรือไม่ (0 = ไม่ได้เข้ารหัส; ให้ผ่าน 0 เสมอ)

## ขอเนื้อความ
ชื่อฟิลด์ คำอธิบาย
--- ---
appid รหัสแอป
idp_id ค่าสตริงของ IdP
idp_user_id ค่า ID ผู้ใช้ที่ระบุโดย IdP
auth_type วัตถุประสงค์ของคีย์การรับรองความถูกต้องแบบกำหนดเอง
SIGNINIDP: การเชื่อมโยง IdP ใหม่และการรับรองความถูกต้อง
CONNECT: เชื่อมโยง IdP กับ ID ผู้เล่น
player_id Player IDผู้ใช้
Note

ในช่องต่างๆ ค่า idp_id จะต้องเขียนในรูปแบบสตริงที่กำหนดอย่างใดอย่างหนึ่งซึ่งแสดงในตัวอย่างด้านล่าง

  • CUSTOM_FIREBASE
    • CUSTOM_FACEBOOK
    • CUSTOM_GOOGLE
    • CUSTOM_SIGNIN_APPLE
    • CUSTOM_TWITTER
    • CUSTOM_NAVER
    • CUSTOM_GAME

เนื้อหาการตอบสนอง

ชื่อฟิลด์ คำอธิบาย ประเภท
result_code รหัสตอบกลับ รายละเอียด Integer
result_msg ข้อความตอบกลับ String
token_validation ผลการตรวจสอบ JWT (ข้อผิดพลาดการตรวจสอบ JWT) Object
token_validation.result_code รหัสผลลัพธ์การตรวจสอบ JWT Integer
token_validation.result_msg ข้อความผลการตรวจสอบ JWT String
data ข้อมูลการตอบกลับ Object
data.custom_auth_key คีย์การรับรองความถูกต้องแบบกำหนดเอง String

รหัสตอบกลับ

ค่าโค้ด คำอธิบาย
0 ความสำเร็จ
1005 ไม่รองรับ auth_type
2499 การตรวจสอบ JWT ล้มเหลว (ดู token_validation)
4200 IdP ที่ไม่รองรับ


ขอตัวอย่าง

{
    "appid": "com.com2us.hivesdk.normal.freefull.apple.global.ios.universal",
    "idp_id": "CUSTOM_TWITTER",
    "idp_user_id": "1204273895139753984",
    "auth_type": "SIGNINIDP",
    "player_id": 10012038880
}


ตัวอย่างการตอบกลับ

ความสำเร็จ

{
    "result_code": 0,
    "result_msg": "SUCCESS",
    "token_validation": {
        "result_code": 0,
        "result_msg": "success"
    },
    "data": {
        "custom_auth_key": "f28ac8415716f438b9c972e3706c0dab"
    }
}

การตรวจสอบ 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."
    }
}
Note

เมื่อการตรวจสอบ JWT ล้มเหลว คุณสามารถตรวจสอบข้อมูลข้อผิดพลาดโดยละเอียดผ่านฟิลด์ token_validation สำหรับรายละเอียด โปรดดู รหัสข้อผิดพลาดการตรวจสอบ JWT