Method: projects.apps.generatePlayIntegrityChallenge

產生挑戰,保護 Play Integrity API 收到完整性判定結果後立即發出的完整性判定結果。下次使用產生的完整性權杖呼叫 apps.exchangePlayIntegrityToken 時,系統會驗證問題是否存在且有效。同一挑戰不應在多次呼叫中重複使用。

HTTP 要求

POST https://firebaseappcheck.googleapis.com/v1beta/{app=projects/*/apps/*}:generatePlayIntegrityChallenge

這個網址使用 gRPC 轉碼語法。

路徑參數

參數
app

string

必要欄位。應用程式的相對資源名稱,格式如下:

projects/{project_number}/apps/{app_id}

如有需要,您可以將 project_number 元素替換為 Firebase 專案的專案 ID。請參閱 Google 的 AIP 2510 標準,進一步瞭解如何使用專案 ID。

要求主體

要求主體必須為空白。

回應主體

apps.generatePlayIntegrityChallenge 方法的回應訊息。

如果成功,回應主體即會包含具有以下結構的資料:

JSON 表示法
{
  "challenge": string,
  "ttl": string
}
欄位
challenge

string

可讓用戶端傳遞至 Play Integrity API 的一次性使用 challenge

ttl

string (Duration format)

從此挑戰開始到到期為止。由於用戶端可能會產生時鐘偏差,但仍可準確測量持續時間,因此這個欄位的用途是簡化用戶端權杖管理。

時間長度以秒為單位,最多可有 9 個小數位數,並結尾為「s」。例如:"3.5s"

授權範圍

需要下列其中一種 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/firebase

詳情請參閱驗證總覽