選擇平台:
即使事件格式錯誤或缺少必要參數,Google Analytics Measurement Protocol 也不會傳回 HTTP 錯誤代碼。為確保事件有效,請先在 Measurement Protocol 驗證伺服器進行測試,再部署到實際執行環境。確認事件結構正確無誤後,請驗證導入狀態,確保您使用的是正確的鍵。
您可以直接呼叫驗證伺服器,或使用 Google Analytics 事件產生器。Google Analytics 事件建立工具可讓您以互動方式建構事件,並使用 Measurement Protocol 驗證伺服器驗證事件。
本指南說明如何將事件傳送至 Google Analytics 4 驗證伺服器的 Measurement Protocol,並解讀回應。
傳送事件以進行驗證
傳送至 Measurement Protocol 和 Measurement Protocol 驗證伺服器的事件要求,唯一差別在於網址。
| 伺服器 | 網址 | 
|---|---|
| Measurement Protocol | /mp/collect | 
| Measurement Protocol 驗證伺服器 | /debug/mp/collect | 
所有其他要求欄位都相同。
建議您採取下列驗證方式:
- 在開發期間,請使用下列任一選項進行嚴格的驗證檢查:
- 使用事件建構工具驗證要求。
- 將 validation_behavior設為ENFORCE_RECOMMENDATIONS,然後將要求傳送至驗證伺服器。
 
- 在實際工作環境中,請傳送未設定 validation_behavior的要求,盡量減少 Measurement Protocol 拒絕的資料。
以下程式碼顯示傳送至 Measurement Protocol 驗證伺服器的無效事件:
const firebaseAppId = "FIREBASE_APP_ID";
const apiSecret = "API_SECRET";
fetch(`https://www.google-analytics.com/debug/mp/collect?firebase_app_id=${firebaseAppId}&api_secret=${apiSecret}`, {
  method: "POST",
  body: JSON.stringify({
    app_instance_id: "APP_INSTANCE_ID",
    validation_behavior: "ENFORCE_RECOMMENDATIONS",
    events: [{
      // Event names must start with an alphabetic character.
      name: "_badEventName",
      params: {},
    }]
  })
});
驗證回應
以下是驗證伺服器對先前事件的回應:
{
  "validationMessages": [
    {
      "fieldPath": "events",
      "description": "Event at index: [0] has invalid name [_badEventName]. Names must start with an alphabetic character.",
      "validationCode": "NAME_INVALID"
    }
  ]
}
以下是驗證伺服器對沒有驗證問題的要求所做的回應:
{
  "validationMessages": []
}
回應
| 鍵 | 類型 | 說明 | 
|---|---|---|
| validationMessages | Array<ValidationMessage> | 驗證訊息陣列。 | 
ValidationMessage
| 鍵 | 類型 | 說明 | 
|---|---|---|
| fieldPath | 字串 | 無效欄位的路徑。 | 
| description | 字串 | 錯誤說明。 | 
| validationCode | ValidationCode | 與錯誤相應的驗證碼。 | 
ValidationCode
| 值 | 說明 | 
|---|---|
| VALUE_INVALID | fieldPath的值無效。詳情請參閱限制。 | 
| VALUE_REQUIRED | 未提供 fieldPath的必要值。 | 
| NAME_INVALID | 提供的名稱無效。詳情請參閱限制。 | 
| NAME_RESERVED | 提供的名稱是保留名稱。請參閱保留名稱。 | 
| VALUE_OUT_OF_BOUNDS | 輸入的值過大。詳情請參閱限制。 | 
| EXCEEDED_MAX_ENTITIES | 要求中的參數過多,詳情請參閱限制。 | 
| NAME_DUPLICATED | 要求中多次提供相同名稱。 |