環境與基礎 URL
這個對接裡涉及兩組彼此獨立的 URL——一組是你指向平台的,另一組是平台指向你的。因為它們是在對接雙方各自配置的,很容易搞混。
平台的基礎 URL(你 → 平台)
平台的基礎 URL 由你的對接窗口提供給你。運營商 API 裡每一次簽名呼叫都是 ${baseUrl}${path}(例如 https://platform.example.com/v1/operator/games/launch)。結尾不帶斜線。
如果你的對接窗口運維著不止一個平台部署(例如,一個在正式上線前用來測試的預生產環境,和真實玩家所在的環境是分開的),每個部署都有自己獨立的 baseUrl以及自己獨立的租戶 ID/密鑰對。請把每一個都當作完全獨立的對接來處理——為一個部署簽發的密鑰,在另一個部署上是無效的。在對接的每個階段,具體應該指向哪個 baseUrl,請和你的對接窗口確認。
註冊你的錢包回調 URL
平台需要知道把它簽名的錢包呼叫——POST /v1/wallet/transaction 和 GET /v1/wallet/balance——發送到哪裡才能回到你這裡。這是透過你租戶的自助入口網站自助完成的:
- 回調基礎 URL——在入口網站的 Settings 頁面自行設定或修改(
POST /portal/api/callback-url,僅限運營商角色)。它必須是一個絕對的http(s)URL。你一儲存,平台就會立即開始把簽名呼叫發往這個新地址——沒有另外的啟用步驟,所以只應該把它指向一個已經在運行你錢包回調實現的地址。 - 回調逾時時間——平台在把一次呼叫判定為
TIMED_OUT之前,會等待你回應多久(見錢包回調 API:逾時)。這個值預設為 5000ms,在你第一次設定回調 URL 時自動生成。和 URL 本身不同,逾時時間不是自助服務——如果 5000ms 不適合你錢包的典型響應時間,請向平台管理團隊提出調整申請。
入口網站上沒有辦法查詢平台是否已經開始把真實流量發往你剛設定的 URL——你需要自行觸發一筆 DEMO 模式的交易來驗證(它不會觸碰你的錢包——見啟動遊戲會話),或者在你確認無誤之後,用一筆小額的 REAL 交易來驗證,並確認你的實現確實收到了這次呼叫。
輪換你的共用密鑰
同樣透過入口網站的 Settings 頁面自助完成(POST /portal/api/rotate-secret)——不需要 admin 審批這一步。輪換之後,你的舊密鑰會在一段寬限期內(預設 7 天)繼續作為備援有效,讓雙方有時間一起切換過去,而不是硬性斷點式的切換。見取得你的共用密鑰。
時鐘同步
每一次簽名呼叫——無論哪個方向——都會依據一個時鐘偏差容許範圍(預設 5 分鐘)進行檢查。請透過 NTP 讓任何簽名或校驗請求的伺服器的時鐘保持同步;時鐘偏差是造成不明原因 401 最常見的原因——見簽名與身份驗證。