Method: echo

對傳入的 clientMessage 發出回音。

這種方法的目的是測試付款整合商與 Google 之間的基本連線能力。

Google 可能會每分鐘呼叫這個方法多次,其中包含有效或無效的參數,以便測試是否能夠正確保留安全性限制條件。Google 也會依照整合商的指示和 Google 的指示,特別稱呼這個方法。Google 每 10 秒會快速呼叫一次,在 15 分鐘內最多呼叫 30 次。

安全性限制測試的例子包括但不限於:

  • 進行測試,確保付款整合商的端點不會交涉低強度加密套件。
  • 進行測試,確保付款整合商的端點只會交涉 TLS 1.2 版本的任何項目
  • 進行測試,確保付款整合商的端點不支援 HTTP。
  • 進行測試,確保付款整合商的端點至少要求一個已知的 PGP 簽署金鑰。
  • 進行測試來確保付款整合商的端點支援多種已知和未知的 PGP 金鑰簽章 (包括已知和未知的 PGP 金鑰簽章,包括過期及有效的金鑰)。
  • 進行測試,確保付款整合商僅支援嚴格的 JSON 剖析功能。

如果端點在處理要求時發生錯誤,來自這個端點的回應主體應為 ErrorResponse 類型。

以下是要求範例:


{
  "requestHeader": {
    "protocolVersion": {
      "major": 1,
      "minor": 0,
      "revision": 0
    },
    "requestId": "ZWNobyB0cmFuc2FjdGlvbg",
    "requestTimestamp": "1481899949606"
  },
  "clientMessage": "client message"
}

回應範例如下所示:


{
  "responseHeader": {
    "responseTimestamp": "1481900013178"
  },
  "clientMessage": "client message",
  "serverMessage": "server message"
}

HTTP 要求

POST https://www.integratorhost.example.com/v1/echo

要求主體

要求主體的資料會採用以下結構:

JSON 表示法
{
  "requestHeader": {
    object (RequestHeader)
  },
  "clientMessage": string
}
欄位
requestHeader

object (RequestHeader)

必要項目:所有要求的通用標頭。

clientMessage

string

必要項目:回應中的 echo 訊息。

回應主體

echo 方法的回應物件。

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

JSON 表示法
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "clientMessage": string,
  "serverMessage": string
}
欄位
responseHeader

object (ResponseHeader)

必要項目:所有回應的通用標頭。

clientMessage

string

必要項目:要求中收到的訊息。

serverMessage

string

選用:伺服器訊息,與被回應的 clientMessage 無關。

RequestHeader

針對傳送至伺服器的所有要求所定義的標頭物件。

JSON 表示法
{
  "requestId": string,
  "requestTimestamp": string,
  "userLocale": string,
  "protocolVersion": {
    object (Version)
  }
}
欄位
requestId

string

必要項目:這項要求的專屬 ID。

這是一個長度上限為 100 個字元的字串,並且只包含「a-z」、「A-Z」、「0-9」、「:」、「-」和「_」等字元。

requestTimestamp

string (int64 format)

必要項目:這項要求的時間戳記,以 Epoch 紀元時間起算的毫秒為單位。接收端應驗證這個時間戳記是否為「現在」的 ±60 秒。重試時,此要求時間戳記並不是冪等的。

userLocale
(deprecated)

string

已淘汰:由兩或三個字母組成的 ISO 639-2 Alpha 3 語言代碼,後面可選擇加上連字號和 ISO 3166-1 Alpha-2 國家/地區代碼,例如「pt」、「pt-BR」、「fil」或「fil-PH」。請使用這個屬性來驅動回應中的 userMessage 欄位。

protocolVersion

object (Version)

必要項目:這項要求的版本。

版本

版本物件是傳統版 a.b.c 版本結構的結構化格式。相同數字的主要版本保證能夠相容。請注意,輕微和修訂可能經常變更,恕不另行通知。整合商必須支援相同主要版本的所有要求。

JSON 表示法
{
  "major": integer,
  "minor": integer,
  "revision": integer
}
欄位
major

integer

必要項目:主要版本。標示為不同版本的廣告素材不保證能夠相容。

minor

integer

必要項目:子版本。這表示重大錯誤修正。

revision

integer

必要項目:子版本。這代表小錯誤修正。