Vuelve a reproducir el clientMessage
que se pasa.
El propósito de este método es probar la conectividad básica entre el integrador de pagos y Google.
Google puede llamar a este método varias veces por minuto con parámetros válidos o no válidos para probar que las restricciones de seguridad se apliquen correctamente. Google también llama a este método ad hoc según la dirección del integrador y también de Google. Google nunca llamará a este método más rápido de una vez cada 10 s y nunca más de 30 veces en un período de 15 minutos.
Estos son algunos ejemplos de pruebas de restricciones de seguridad:
- Realiza pruebas para asegurarte de que el extremo del integrador de pagos no negocie con conjuntos de algoritmos de cifrado débiles.
- Realiza pruebas para asegurarte de que el extremo del integrador de pagos solo negocie con TLS 1.2
- Realiza pruebas para asegurarte de que el extremo del integrador de pagos no sea compatible con HTTP.
- Realiza pruebas para asegurarte de que el extremo del integrador de pagos exija al menos una clave de firma de PGP conocida.
- Realiza pruebas para asegurarte de que el extremo del integrador de pagos admita varias firmas de clave de PGP, conocidas y desconocidas, tanto vencidas como activas.
- Realiza pruebas para asegurarte de que el integrador de pagos solo admita el análisis estricto de JSON.
Si el extremo encuentra un error mientras procesa la solicitud, el cuerpo de la respuesta de este extremo debe ser del tipo
.ErrorResponse
A continuación, se muestra una solicitud de ejemplo:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "ZWNobyB0cmFuc2FjdGlvbg",
"requestTimestamp": "1481899949606"
},
"clientMessage": "client message"
}
Esta es una respuesta de ejemplo:
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"clientMessage": "client message",
"serverMessage": "server message"
}
Solicitud HTTP
POST https://www.integratorhost.example.com/v1/echo
Cuerpo de la solicitud
El cuerpo de la solicitud contiene datos con la siguiente estructura:
Representación JSON |
---|
{
"requestHeader": {
object ( |
Campos | |
---|---|
requestHeader |
OBLIGATORIO: Encabezado común para todas las solicitudes |
clientMessage |
OBLIGATORIO: Es el mensaje que se debe repetir en la respuesta. |
Cuerpo de la respuesta
Objeto de respuesta del método echo.
Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:
Representación JSON |
---|
{
"responseHeader": {
object ( |
Campos | |
---|---|
responseHeader |
OBLIGATORIO: Encabezado común para todas las respuestas |
clientMessage |
OBLIGATORIO: Mensaje recibido en la solicitud. |
serverMessage |
OPCIONAL: Es el mensaje del servidor, independiente de la |
RequestHeader
Es un objeto de encabezado que se define en todas las solicitudes que se envían al servidor.
Representación JSON |
---|
{
"requestId": string,
"requestTimestamp": string,
"userLocale": string,
"protocolVersion": {
object ( |
Campos | |
---|---|
requestId |
REQUIRED: Es el identificador único de esta solicitud. Es una cadena que tiene una longitud máxima de 100 caracteres y solo contiene los caracteres "a-z", "A-Z", "0-9", ":", "-" y "_". |
requestTimestamp |
OBLIGATORIO: Es la marca de tiempo de esta solicitud representada en milisegundos desde el ciclo de entrenamiento. El receptor debe verificar que la marca de tiempo sea de ± 60 s de "ahora". Esta marca de tiempo de solicitud no es idempotente en los reintentos. |
userLocale |
OBSOLETO: Un código de idioma ISO 639-2 Alfa 3 de dos o tres letras, opcionalmente seguido de un guion y un código de país ISO 3166-1 alfa-2, p.ej., "pt", "pt-BR", "fil" o "fil-PH". Úsalo para ayudar a controlar los campos |
protocolVersion |
OBLIGATORIO: Es la versión de esta solicitud. |
Versión
Un objeto Version, que es una forma estructurada de la estructura de versión clásica de a.b.c
. Se garantiza que las versiones principales de la misma cantidad son compatibles. Ten en cuenta que las revisiones menores y las revisiones pueden cambiar con frecuencia y sin previo aviso. El integrador debe admitir todas las solicitudes de la misma versión principal.
Representación JSON |
---|
{ "major": integer, "minor": integer, "revision": integer } |
Campos | |
---|---|
major |
OBLIGATORIO: Es la versión principal. Esto se marca cuando no se garantiza la compatibilidad de las solicitudes de compatibilidad con diferentes versiones. |
minor |
OBLIGATORIO: Versión secundaria. Esto indica que se corrigieron errores importantes. |
revision |
OBLIGATORIO: Versión secundaria. Esto implica correcciones de errores menores. |