Method: echo

Gibt das übergebene clientMessage zurück.

Mit dieser Methode wird die grundlegende Konnektivität zwischen dem Zahlungsintegrator und Google getestet.

Diese Methode kann von Google mehrmals pro Minute mit gültigen oder ungültigen Parametern aufgerufen werden, um zu testen, ob die Sicherheitsbeschränkungen korrekt eingehalten werden. Google nennt diese Methode sowohl auf Anweisung des Integrators als auch auf Anweisung von Google „ad-hoc“. Google ruft dies niemals schneller als alle 10 Sekunden und nie öfter als 30 Mal in einem 15-Minuten-Zeitfenster auf.

Beispiele für Sicherheitseinschränkungstests:

  • Testen Sie, ob der Endpunkt des Zahlungsintegrators nicht mit schwachen Cipher Suites aushandelt.
  • Testen Sie, ob der Endpunkt des Zahlungsintegrators nur mit TLS 1.2 aushandelt
  • Testen Sie, ob der Endpunkt des Zahlungsintegrators HTTP unterstützt.
  • Testen Sie, ob der Endpunkt des Zahlungsintegrators mindestens einen bekannten PGP-Signaturschlüssel vorschreibt.
  • Testen Sie, ob der Endpunkt des Zahlungsintegrators mehrere bekannte und unbekannte PGP-Schlüsselsignaturen unterstützt, die abgelaufen und aktiv sind.
  • Testen Sie, ob der Zahlungsintegrator nur strenges JSON-Parsing unterstützt.

Wenn am Endpunkt bei der Verarbeitung der Anfrage ein Fehler auftritt, sollte der Antworttext dieses Endpunkts vom Typ ErrorResponse sein.

Eine Beispielanfrage sieht so aus:


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

Eine Beispielantwort sieht so aus:


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

HTTP-Anfrage

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

Anfragetext

Der Anfragetext enthält Daten mit folgender Struktur:

JSON-Darstellung
{
  "requestHeader": {
    object (RequestHeader)
  },
  "clientMessage": string
}
Felder
requestHeader

object (RequestHeader)

ERFORDERLICH: Allgemeiner Header für alle Anfragen.

clientMessage

string

REQUIRED: Nachricht, die in der Antwort wiederholt werden soll.

Antworttext

Antwortobjekt für die echo-Methode.

Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur:

JSON-Darstellung
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "clientMessage": string,
  "serverMessage": string
}
Felder
responseHeader

object (ResponseHeader)

REQUIRED: Allgemeiner Header für alle Antworten.

clientMessage

string

REQUIRED: In der Anfrage erhaltene Nachricht.

serverMessage

string

OPTIONAL: Servernachricht, unabhängig vom clientMessage, das wiedergegeben wird.

RequestHeader

Header-Objekt, das für alle an den Server gesendeten Anfragen definiert wird.

JSON-Darstellung
{
  "requestId": string,
  "requestTimestamp": string,
  "userLocale": string,
  "protocolVersion": {
    object (Version)
  }
}
Felder
requestId

string

REQUIRED: Die eindeutige ID der Anfrage.

Dies ist ein String mit maximal 100 Zeichen, der nur die Zeichen „a–z“, „A–Z“, „0–9“, ":", „-“ und „_“ enthält.

requestTimestamp

string (int64 format)

REQUIRED: Zeitstempel dieser Anfrage in Millisekunden seit der Epoche. Der Empfänger sollte überprüfen, ob dieser Zeitstempel ± 60 Sekunden von „jetzt“ ist. Dieser Anfragezeitstempel ist bei Wiederholungen nicht idempotent.

userLocale
(deprecated)

string

EINGESTELLT: Ein aus zwei oder drei Buchstaben bestehender ISO 639-2 Alpha 3-Sprachcode, optional gefolgt von einem Bindestrich und einem Ländercode gemäß ISO 3166-1 Alpha-2, z.B."pt", "pt-BR", "fil" oder "fil-PH". Verwenden Sie dies, um die userMessage-Felder in der Antwort zu verarbeiten.

protocolVersion

object (Version)

REQUIRED: Die Version dieser Anfrage.

Version

Versionsobjekt, das eine strukturierte Form der klassischen a.b.c-Versionsstruktur ist. Für Hauptversionen derselben Nummer wird garantiert, dass sie kompatibel sind. Beachten Sie, dass kleinere und überarbeitete Versionen häufig und ohne Vorankündigung geändert werden können. Der Integrator muss alle Anfragen für dieselbe Hauptversion unterstützen.

JSON-Darstellung
{
  "major": integer,
  "minor": integer,
  "revision": integer
}
Felder
major

integer

ERFORDERLICH: Hauptversion. Dies ist für Kompatibilitätsanfragen mit unterschiedlichen Versionen gekennzeichnet, bei denen nicht garantiert wird, dass sie kompatibel sind.

minor

integer

REQUIRED: Nebenversion. Dies weist auf erhebliche Fehlerkorrekturen hin.

revision

integer

REQUIRED: Nebenversion. Dies weist auf kleinere Fehlerkorrekturen hin.