Zwraca echa do przekazanej wartości clientMessage
.
Ta metoda służy do testowania podstawowych połączeń między integratorem płatności a Google.
Ta metoda może być wywoływana przez Google wiele razy na minutę z prawidłowymi lub nieprawidłowymi parametrami w celu sprawdzenia, czy ograniczenia zabezpieczeń są odpowiednio przestrzegane. Google nazywa tę metodę doraźnie i z pomocą integratora. Google nigdy nie wywoła tej metody szybciej niż raz na 10 sekund i nigdy nie więcej niż 30 razy w ciągu 15 minut.
Przykłady testów ograniczeń zabezpieczeń:
- Przeprowadź test, aby upewnić się, że punkt końcowy integratora płatności nie jest negocjowany na słabe zestawy szyfrów.
- Przeprowadź test, aby upewnić się, że punkt końcowy integratora płatności nie negocjuje tylko z protokołem TLS 1.2
- Przeprowadź test, aby sprawdzić, czy punkt końcowy integratora płatności nie obsługuje HTTP.
- Przeprowadź test, aby upewnić się, że punkt końcowy integratora płatności określa co najmniej 1 znany klucz podpisywania PGP.
- Przeprowadź test, aby upewnić się, że punkt końcowy integratora płatności obsługuje wiele podpisów kluczy PGP, zarówno znanych, jak i nieznanych, zarówno tych wygasłych, jak i aktywnych.
- Przeprowadź test, aby upewnić się, że integrator płatności obsługuje tylko ścisłą analizę danych JSON.
Jeśli podczas przetwarzania żądania punkt końcowy napotka błąd, treść odpowiedzi z tego punktu końcowego powinna być typu
.ErrorResponse
Przykładowe żądanie wygląda tak:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "ZWNobyB0cmFuc2FjdGlvbg",
"requestTimestamp": "1481899949606"
},
"clientMessage": "client message"
}
Przykładowa odpowiedź wygląda tak:
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"clientMessage": "client message",
"serverMessage": "server message"
}
Żądanie HTTP
POST https://www.integratorhost.example.com/v1/echo
Treść żądania
Treść żądania zawiera dane o następującej strukturze:
Zapis JSON |
---|
{
"requestHeader": {
object ( |
Pola | |
---|---|
requestHeader |
REQUIRED: wspólny nagłówek dla wszystkich żądań. |
clientMessage |
REQUIRED: wiadomość do wykonania w odpowiedzi. |
Treść odpowiedzi
Obiekt odpowiedzi dla metody echa.
W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:
Zapis JSON |
---|
{
"responseHeader": {
object ( |
Pola | |
---|---|
responseHeader |
REQUIRED: wspólny nagłówek wszystkich odpowiedzi. |
clientMessage |
REQUIRED: w żądaniu odebrano wiadomość. |
serverMessage |
OPCJONALNIE: komunikat serwera niezależnie od odczytywanego parametru |
RequestHeader
Obiekt nagłówka zdefiniowany we wszystkich żądaniach wysyłanych do serwera.
Zapis JSON |
---|
{
"requestId": string,
"requestTimestamp": string,
"userLocale": string,
"protocolVersion": {
object ( |
Pola | |
---|---|
requestId |
REQUIRED: unikalny identyfikator tego żądania. Jest to ciąg o maksymalnej długości 100 znaków, który zawiera tylko znaki „a–z”, „A–Z”, „0–9”, „:”, „-” i „_”. |
requestTimestamp |
REQUIRED: sygnatura czasowa tego żądania w milisekundach od początku epoki. Odbiorca powinien sprawdzić, czy ta sygnatura czasowa mieści się w zakresie ± 60 s „teraz”. Ta sygnatura czasowa żądania nie jest idempotentna przy ponownych próbach. |
userLocale |
WYCOFANE: opcjonalnie dwu- lub trzyliterowy kod języka w formacie ISO 639-2 alfa 3, po którym następuje łącznik i kod kraju w formacie ISO 3166-1 Alpha-2, np. „pt”, „pt-BR”, „fil” lub „fil-PH”. Ułatwia to obsługę pól |
protocolVersion |
REQUIRED: wersja żądania. |
Wersja
Obiekt wersji będący ustrukturyzowaną formą klasycznej struktury wersji a.b.c
. Główne wersje tego samego numeru zawsze będą zgodne. Pamiętaj, że drobne zmiany i zmiany mogą się zmieniać często i bez powiadomienia. Integrator musi obsługiwać wszystkie żądania tej samej wersji głównej.
Zapis JSON |
---|
{ "major": integer, "minor": integer, "revision": integer } |
Pola | |
---|---|
major |
REQUIRED: wersja główna. Ten element jest oznaczony w przypadku żądań zgodności z różnymi wersjami Google Workspace. |
minor |
REQUIRED: wersja podrzędna. To oznacza ważne poprawki błędów. |
revision |
REQUIRED: wersja podrzędna. Oznaczają poprawki drobnych błędów. |