應用內資訊 API
應用內信息檢索API是一個用於獲取訪問網絡商店的用戶的應用伺服器、頻道和角色信息的API。此API從Hive伺服器向開發者的應用伺服器發送請求,然後開發者的伺服器將響應返回給Hive伺服器。
概述¶
當使用 Hive 社區和網路商店時,連接用戶的應用伺服器、頻道和角色資訊是必需的,以實現下方所示的網路商店購買的使用者介面。
整個過程,包括使用這個 API,可以總結如下。
- 應用程式開發者:通過配置API端點準備伺服器URL
- 應用程式開發者:在Hive控制台中設置要發送到Hive伺服器的信息遊戲內信息
- Hive伺服器:應用程式開發者向註冊的伺服器URL發送POST API請求並接收數據作為響應
- Hive伺服器:將接收到的應用程式伺服器、頻道和角色信息發送到前端
- 網店前端:在網店購買UI中顯示下拉菜單
API 端點配置 (伺服器網址)¶
在Hive 控制台社群與網路商店 > 網路商店 > 網路商店設定 > 遊戲內資訊中註冊 API 端點。
API 端點在接收到請求時必須在請求參數中接收用戶信息(cs_code
),並且應該在響應中返回應用伺服器、頻道和角色信息。API 端點的配置如下例所示,對應於 Hive 控制台(生產、沙盒、測試)。
控制台環境 | API 端點 |
---|---|
生產 | https://{URL}/webstore-profile |
沙盒 | https://{URL}/webstore-profile |
測試 | https://{URL}/webstore-profile |
API 請求 (Hive 伺服器 → 應用伺服器) 配置¶
這是從 Hive 伺服器發送到應用伺服器的 POST 請求資訊。您將在回應中收到應用伺服器列表、伺服器中包含的頻道以及角色列表。
API 資訊 | 描述 |
---|---|
方法 | POST |
回應格式 | JSON |
內容類型 | application/json |
以下是請求主體資訊。
名稱 | 類型 | 必需 (必需: O, 可選: X) | 描述 |
---|---|---|---|
cs_code | 字串 | O | 使用者唯一識別碼 |
這是一個請求主體的範例。
API 回應 (應用伺服器 → Hive 伺服器) 配置¶
這是應用伺服器在響應成功時必須傳遞給Hive伺服器的響應值資訊。對於每個產品基於角色等級的購買限制功能,即使在Hive控制台的應用內資訊中未選擇角色,角色等級資訊也必須傳遞。如果未選擇角色且數組中有多個角色(data.channels.characters
),則使用數組第一個元素對應的角色的等級。
名稱 | 類型 | 必需 (必需: O, 可選: X) | 描述 |
---|---|---|---|
result_code | 整數 | O | 結果代碼 |
result_message | 字串 | O | 結果訊息 |
cs_code | 字串 | O | 用戶的唯一識別碼 |
data | 陣列 | O | 伺服器列表 (如果沒有用戶資訊,回應值: "[ ]") |
data.server_id | 字串 | O | 伺服器的唯一識別碼 |
data.server_name | 字串 | O | 伺服器名稱 |
data.channels | 陣列 | O | 包含在伺服器中的頻道列表 |
data.channels.channel_id | 字串 | O | 頻道的唯一識別碼 (如果頻道未使用,回應值: "0") |
data.channels.channel_name | 字串 | O | 頻道名稱 (如果頻道未使用,回應值: "-") |
data.channels.characters | 陣列 | O | 包含在頻道中的角色列表 |
data.channels.characters.character_id | 字串 | O | 角色的唯一識別碼 (如果角色未使用,回應值: "-") |
data.channels.characters.character_name | 字串 | O | 角色名稱 (如果角色未使用,回應值: "-") |
data.channels.characters.character_level | 字串 | O | 角色的等級 (如果角色等級不可用,回應值: "0") |
以下是當回應成功時的回應值示例。
// When you activated the server, the channel, and the character in the console
{
"result_code": 200,
"result_message": "success",
"cs_code": "c_123412341234",
"data": [
{
"server_id": "1",
"server_name": "Server 1",
"channels": [{
"channel_id": "1",
"channel_name": "Channel 1",
"characters": [{
"character_id": "A",
"character_name": "Character A",
"character_level": "99"
},
{
"character_id": "B",
"character_name": "Character B",
"character_level": "10"
}
]
}]
}
]
}
// When you activated the server and the character in the console
{
"result_code": 200,
"result_message": "success",
"cs_code": "c_123412341234",
"data": [
{
"server_id": "2",
"server_name": "Server 2",
"channels": [{
"channel_id": "0",
"channel_name": "-",
"characters": [{
"character_id": "C",
"character_name": "Character C",
"character_level": "11"
},
{
"character_id": "D",
"character_name": "Character E",
"character_level": "12"
}
]
}]
}
]
}
// When you activated the server and the channel in the console
{
"result_code": 200,
"result_message": "success",
"cs_code": "c_123412341234",
"data": [
{
"server_id": "3",
"server_name": "Server 3",
"channels": [{
"channel_id": "2",
"channel_name": "Channel 2",
"characters": [{
"character_id": "-",
"character_name": "-",
"character_level": "99"
}]
}]
}
]
}
// When you activated the server in the console
{
"result_code": 200,
"result_message": "success",
"cs_code": "c_123412341234",
"data": [
{
"server_id": "4",
"server_name": "Server 4",
"channels": [{
"channel_id": "0",
"channel_name": "-",
"characters": [{
"character_id": "-",
"character_name": "-",
"character_level": "99"
}]
}]
}
]
}
// When you activated the server, the channel, and the character in the console: multiple channels
{
"result_code": 200,
"result_message": "success",
"cs_code": "c_123412341234",
"data": [
{
"server_id": "1",
"server_name": "Server 1",
"channels": [
{
"channel_id": "1",
"channel_name": "Channel 1",
"characters": [
{
"character_id": "A",
"character_name": "Character A",
"character_level": "99"
}, {
"character_id": "B",
"character_name": "Character B",
"character_level": "10"
}
]
}, {
"channel_id": "2",
"channel_name": "Channel 2",
"characters": [
{
"character_id": "A2",
"character_name": "Character A2",
"character_level": "99"
}, {
"character_id": "B2",
"character_name": "Character B2",
"character_level": "10"
}
]
}
]
}
]
}
以下是響應代碼 (result_code
).
代碼 | 描述 |
---|---|
200 | 成功 |
204 | 無用戶資訊 |
500 | 伺服器錯誤 |