REST Resource: projects.locations.httpRoutes

Recurso: HttpRoute

HttpRoute es el recurso que define cómo un recurso de malla o puerta de enlace debe enrutar el tráfico HTTP.

Representación JSON
{
  "name": string,
  "selfLink": string,
  "description": string,
  "createTime": string,
  "updateTime": string,
  "hostnames": [
    string
  ],
  "meshes": [
    string
  ],
  "gateways": [
    string
  ],
  "labels": {
    string: string,
    ...
  },
  "rules": [
    {
      object (RouteRule)
    }
  ]
}
Campos
name

string

Obligatorio. Nombre del recurso HttpRoute. Coincide con el patrón projects/*/locations/global/httpRoutes/http_route_name>.

description

string

Opcional. Es una descripción de texto libre del recurso. La longitud máxima es de 1,024 caracteres.

createTime

string (Timestamp format)

Solo salida. Marca de tiempo cuando se creó el recurso.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Solo salida. La marca de tiempo de la actualización del recurso.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

hostnames[]

string

Obligatorio. Los nombres de host definen un conjunto de hosts que debe coincidir con el encabezado del host HTTP para seleccionar una HttpRoute para procesar la solicitud. El nombre de host es el nombre de dominio completamente calificado de un host de red, según lo define RFC 1123, con la excepción de lo siguiente: - No se permiten IP. - Un nombre de host puede tener el prefijo de una etiqueta comodín (*.). La etiqueta comodín debe aparecer sola como primera etiqueta.

El nombre de host puede ser “preciso”, que es un nombre de dominio sin el punto final de un host de red (p.ej., foo.example.com), o un “comodín”, que es un nombre de dominio con un prefijo único de una etiqueta de comodín (p.ej., *.example.com).

Ten en cuenta que, según RFC1035 y RFC1123, una etiqueta debe incluir caracteres alfanuméricos en minúscula o “-”, y debe comenzar y terminar con un carácter alfanumérico. No se permite ningún otro tipo de puntuación.

Las rutas asociadas con una malla o puertas de enlace deben tener nombres de host únicos. Si intentas conectar varias rutas con nombres de host en conflicto, se rechazará la configuración.

Por ejemplo, si bien es aceptable que las rutas para los nombres de host *.foo.bar.com y *.bar.com se asocien con la misma malla (o puertas de enlace con el mismo alcance), no es posible asociar dos rutas con *.bar.com o ambas con bar.com.

meshes[]

string

Opcional. Las mallas definen una lista de mallas a las que se adjunta esta HttpRoute, como una de las reglas de enrutamiento para enrutar las solicitudes que entrega la malla.

Cada referencia de malla debe coincidir con el patrón projects/*/locations/global/meshes/<mesh_name>.

La malla conectada debe ser del tipo SIDECAR.

gateways[]

string

Opcional. Las puertas de enlace definen una lista de puertas de enlace a las que se adjunta esta HttpRoute, como una de las reglas de enrutamiento para enrutar las solicitudes que entrega la puerta de enlace.

Cada referencia de puerta de enlace debe coincidir con el patrón projects/*/locations/global/gateways/<gateway_name>.

labels

map (key: string, value: string)

Opcional. Conjunto de etiquetas de etiqueta asociadas con el recurso HttpRoute.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

rules[]

object (RouteRule)

Obligatorio. Reglas que definen cómo se enruta y maneja el tráfico. Las reglas se harán coincidir de forma secuencial según la RouteMatch especificada para ellas.

RouteRule

Especifica cómo hacer coincidir el tráfico y cómo enrutarlo cuando el tráfico coincide.

Representación JSON
{
  "matches": [
    {
      object (RouteMatch)
    }
  ],
  "action": {
    object (RouteAction)
  }
}
Campos
matches[]

object (RouteMatch)

Una lista de coincidencias define las condiciones usadas para hacer coincidir la regla con las solicitudes HTTP entrantes. Cada coincidencia es independiente, es decir, esta regla coincidirá si se cumple CUALQUIERA de las coincidencias.

Si no se especifica un campo de coincidencias, esta regla coincidirá incondicionalmente con el tráfico.

Si deseas configurar una regla predeterminada, agrega una regla sin coincidencias especificadas al final de la lista de reglas.

action

object (RouteAction)

La regla detallada que define cómo enrutar el tráfico coincidente.

RouteMatch

RouteMatch define las especificaciones que se usan para hacer coincidir las solicitudes. Si se establecen varios tipos de concordancia, esta coincidencia de RouteMatch coincidirá si TODOS los tipos de coincidencias coinciden.

Representación JSON
{
  "ignoreCase": boolean,
  "headers": [
    {
      object (HeaderMatch)
    }
  ],
  "queryParameters": [
    {
      object (QueryParameterMatch)
    }
  ],

  // Union field PathMatch can be only one of the following:
  "fullPathMatch": string,
  "prefixMatch": string,
  "regexMatch": string
  // End of list of possible types for union field PathMatch.
}
Campos
ignoreCase

boolean

Especifica si las coincidencias prefijoMatch y fullPathMatch distinguen entre mayúsculas y minúsculas. El valor predeterminado es falso.

headers[]

object (HeaderMatch)

Especifica una lista de encabezados de solicitud HTTP con los que debe coincidir. TODOS los encabezados proporcionados deben coincidir.

queryParameters[]

object (QueryParameterMatch)

Especifica una lista de parámetros de consulta con los que debe coincidir. TODOS los parámetros de consulta deben coincidir.

Campo de unión PathMatch.

PathMatch puede ser una de las siguientes opciones:

fullPathMatch

string

El valor de la ruta de la solicitud HTTP debe coincidir exactamente con este valor.

Solo se debe usar fullPathMatch, prefijoMatch o regexMatch.

prefixMatch

string

El valor de la ruta de acceso de la solicitud HTTP debe comenzar con el símboloPrefixMatch especificado. descriptorMatch debe comenzar con una /.

Solo se debe usar fullPathMatch, prefijoMatch o regexMatch.

regexMatch

string

El valor de la ruta de acceso de la solicitud HTTP debe satisfacer la expresión regular especificada por regexMatch después de quitar cualquier parámetro de consulta y ancla que se suministran con la URL original. Para conocer la gramática de expresiones regulares, consulta https://github.com/google/re2/wiki/Syntax

Solo se debe usar fullPathMatch, prefijoMatch o regexMatch.

HeaderMatch

Especifica cómo seleccionar una regla de enrutamiento basada en encabezados de solicitud HTTP.

Representación JSON
{
  "header": string,
  "invertMatch": boolean,

  // Union field MatchType can be only one of the following:
  "exactMatch": string,
  "regexMatch": string,
  "prefixMatch": string,
  "presentMatch": boolean,
  "suffixMatch": string,
  "rangeMatch": {
    object (IntegerRange)
  }
  // End of list of possible types for union field MatchType.
}
Campos
header

string

El nombre del encabezado HTTP con el que se debe coincidir.

invertMatch

boolean

Si se especifica, el resultado de la coincidencia se invertirá antes de la verificación. El valor predeterminado está establecido en falso.

Campo de unión MatchType.

MatchType puede ser una de las siguientes opciones:

exactMatch

string

El valor del encabezado debe coincidir exactamente con el contenido de concordancia exacta.

regexMatch

string

El valor del encabezado debe coincidir con la expresión regular especificada en regexMatch. Para conocer la gramática de expresiones regulares, consulta: https://github.com/google/re2/wiki/Syntax

prefixMatch

string

El valor del encabezado debe comenzar con el contenido deprefixMatch.

presentMatch

boolean

Debe existir un encabezado con headerName. La coincidencia se produce sin importar si el encabezado tiene un valor o no.

suffixMatch

string

El valor del encabezado debe terminar con el contenido de NDKMatch.

rangeMatch

object (IntegerRange)

Si se especifica, la regla coincidirá si el valor del encabezado de la solicitud se encuentra dentro del rango.

IntegerRange

Representa un rango de valores de números enteros.

Representación JSON
{
  "start": integer,
  "end": integer
}
Campos
start

integer

Inicio del rango (inclusive)

end

integer

Fin del período (exclusivo)

QueryParameterMatch

Especificaciones para hacer coincidir un parámetro de consulta en la solicitud.

Representación JSON
{
  "queryParameter": string,

  // Union field MatchType can be only one of the following:
  "exactMatch": string,
  "regexMatch": string,
  "presentMatch": boolean
  // End of list of possible types for union field MatchType.
}
Campos
queryParameter

string

El nombre del parámetro de búsqueda que debe coincidir.

Campo de unión MatchType.

MatchType puede ser una de las siguientes opciones:

exactMatch

string

El valor del parámetro de consulta debe coincidir exactamente con el contenido de la concordancia exacta.

Solo se debe establecer una concordancia exacta, regexMatch o presenteMatch.

regexMatch

string

El valor del parámetro de búsqueda debe coincidir con la expresión regular especificada por regexMatch. Para conocer la gramática de expresiones regulares, consulta https://github.com/google/re2/wiki/Syntax

Solo se debe establecer una concordancia exacta, regexMatch o presenteMatch.

presentMatch

boolean

Especifica que QueryParameterMatcher coincide si la solicitud contiene un parámetro de consulta, independientemente de si el parámetro tiene un valor o no.

Solo se debe establecer una concordancia exacta, regexMatch o presenteMatch.

RouteAction

Las especificaciones para enrutar el tráfico y aplicar las políticas asociadas.

Representación JSON
{
  "destinations": [
    {
      object (Destination)
    }
  ],
  "redirect": {
    object (Redirect)
  },
  "faultInjectionPolicy": {
    object (FaultInjectionPolicy)
  },
  "requestHeaderModifier": {
    object (HeaderModifier)
  },
  "responseHeaderModifier": {
    object (HeaderModifier)
  },
  "urlRewrite": {
    object (URLRewrite)
  },
  "timeout": string,
  "retryPolicy": {
    object (RetryPolicy)
  },
  "requestMirrorPolicy": {
    object (RequestMirrorPolicy)
  },
  "corsPolicy": {
    object (CorsPolicy)
  },
  "statefulSessionAffinity": {
    object (StatefulSessionAffinityPolicy)
  },
  "directResponse": {
    object (HttpDirectResponse)
  },
  "idleTimeout": string
}
Campos
destinations[]

object (Destination)

El destino al que se debe reenviar el tráfico.

redirect

object (Redirect)

Si se configura, la solicitud se dirige como se configuró en este campo.

faultInjectionPolicy

object (FaultInjectionPolicy)

La especificación para la inyección de errores que se introduce en el tráfico para probar la resiliencia de los clientes ante la falla del servicio de backend. Como parte de la inyección de errores, cuando los clientes envían solicitudes a un servicio de backend, se pueden producir retrasos en un porcentaje de solicitudes antes de enviarlas al servicio de backend. De manera similar, las solicitudes de los clientes pueden anularse para un porcentaje de solicitudes.

Los clientes configurados con failedInjectionPolicy ignorarán timeout yRetryPolicy.

requestHeaderModifier

object (HeaderModifier)

Es la especificación para modificar los encabezados de una solicitud coincidente antes de entregar la solicitud al destino. Si se configuran HeaderModifiers tanto en el destino como en la RouteAction, se combinarán. Los conflictos entre ambos no se resolverán en la configuración.

responseHeaderModifier

object (HeaderModifier)

La especificación para modificar los encabezados de una respuesta antes de enviarla al cliente. Si se configuran HeaderModifiers tanto en el destino como en la RouteAction, se combinarán. Los conflictos entre ambos no se resolverán en la configuración.

urlRewrite

object (URLRewrite)

La especificación para reescribir la URL antes de reenviar las solicitudes al destino.

timeout

string (Duration format)

Especifica el tiempo de espera para la ruta seleccionada. El tiempo de espera se calcula desde el momento en que la solicitud se procesa por completo (es decir, el final de la transmisión) hasta que la respuesta se procesa por completo. El tiempo de espera incluye todos los reintentos.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

retryPolicy

object (RetryPolicy)

Especifica la política de reintentos asociada con esta ruta.

requestMirrorPolicy

object (RequestMirrorPolicy)

Especifica la política sobre cómo las solicitudes destinadas al destino de las rutas se duplican en un destino duplicado independiente. El proxy no esperará a que el destino paralelo responda antes de mostrar la respuesta. Antes de enviar tráfico al servicio paralelo, el encabezado del host o de autoridad tiene el sufijo -shadow.

corsPolicy

object (CorsPolicy)

La especificación para permitir las solicitudes de origen cruzado del cliente.

statefulSessionAffinity

object (StatefulSessionAffinityPolicy)

Opcional. Especifica la afinidad de sesión con estado basada en cookies.

directResponse

object (HttpDirectResponse)

Opcional. Es un objeto de respuesta HTTP estático que se mostrará sin importar la solicitud.

idleTimeout

string (Duration format)

Opcional. Especifica el tiempo de espera de inactividad para la ruta seleccionada. El tiempo de espera de inactividad se define como el período en el que no se enviaron ni recibieron bytes en la conexión ascendente o descendente. Si no la estableces, el tiempo de espera de inactividad predeterminado será de 1 hora. Si se configura en 0 s, se inhabilitará el tiempo de espera.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

Destino

Especificaciones de un destino al que se debe enrutar la solicitud.

Representación JSON
{
  "serviceName": string,
  "weight": integer,
  "requestHeaderModifier": {
    object (HeaderModifier)
  },
  "responseHeaderModifier": {
    object (HeaderModifier)
  }
}
Campos
serviceName

string

La URL de un BackendService a la que se enrutará el tráfico.

weight

integer

Especifica la proporción de solicitudes reenviadas al backend a las que hace referencia el campo serviceName. Esto se calcula de la siguiente manera: - peso/Suma(pesos de esta lista de destino). Para valores distintos de cero, puede haber algo de épsilon de la proporción exacta definida aquí según la precisión que admita una implementación.

Si solo se especifica un serviceName y tiene un peso superior a 0, el 100% del tráfico se reenvía a ese backend.

Si se especifican pesos para cualquier nombre de servicio, deben especificarse para todos.

Si no se especifican los pesos para todos los servicios, el tráfico se distribuye en proporciones iguales para todos ellos.

requestHeaderModifier

object (HeaderModifier)

Opcional. Es la especificación para modificar los encabezados de una solicitud coincidente antes de entregar la solicitud al destino. Si se configuran HeaderModifiers tanto en el destino como en la RouteAction, se combinarán. Los conflictos entre ambos no se resolverán en la configuración.

responseHeaderModifier

object (HeaderModifier)

Opcional. La especificación para modificar los encabezados de una respuesta antes de enviarla al cliente. Si se configuran HeaderModifiers tanto en el destino como en la RouteAction, se combinarán. Los conflictos entre ambos no se resolverán en la configuración.

HeaderModifier

Es la especificación para modificar el encabezado HTTP en la solicitud HTTP y la respuesta HTTP.

Representación JSON
{
  "set": {
    string: string,
    ...
  },
  "add": {
    string: string,
    ...
  },
  "remove": [
    string
  ]
}
Campos
set

map (key: string, value: string)

Reemplaza o reemplaza por completo los encabezados por un mapa determinado, en el que "clave" es el nombre del encabezado y "valor" es el valor del encabezado.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

add

map (key: string, value: string)

Agrega los encabezados con un mapa determinado, en el que "clave" es el nombre del encabezado y "valor" es el valor del encabezado.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

remove[]

string

Quita los encabezados (que coincidan con los nombres de encabezado) especificados en la lista.

Redireccionamiento

La especificación para redireccionar el tráfico.

Representación JSON
{
  "hostRedirect": string,
  "pathRedirect": string,
  "prefixRewrite": string,
  "responseCode": enum (ResponseCode),
  "httpsRedirect": boolean,
  "stripQuery": boolean,
  "portRedirect": integer
}
Campos
hostRedirect

string

El host que se usará en la respuesta de redireccionamiento en lugar del que se suministró en la solicitud.

pathRedirect

string

La ruta de acceso que se usará en la respuesta de redireccionamiento en lugar de la que se suministró en la solicitud. pathRedirect no se puede proporcionar junto con prefijoRedirect. Proporciona uno solo o ninguno. Si no se proporciona ninguno, se utilizará la ruta de la solicitud original para el redireccionamiento.

prefixRewrite

string

Indica que, durante el redireccionamiento, el prefijo coincidente (o la ruta) se debe intercambiar con este valor. Esta opción permite crear URLs de forma dinámica en función de la solicitud.

responseCode

enum (ResponseCode)

El código de estado HTTP que se debe usar para el redireccionamiento.

httpsRedirect

boolean

Si se configura como verdadero, el esquema de URL en la solicitud redireccionada se configura como https. Si se configura como false, el esquema de URL de la solicitud redireccionada seguirá siendo el mismo que el de la solicitud.

El valor predeterminado es falso.

stripQuery

boolean

si se configura como verdadera, se quitará cualquier parte de la consulta que la acompaña de la URL original antes de redireccionar la solicitud. Si se configura como falsa, se conserva la parte de búsqueda de la URL original.

El valor predeterminado es falso.

portRedirect

integer

El puerto que se usará en la solicitud redireccionada en lugar del que se suministró en la solicitud.

ResponseCode

Código de respuesta HTTP compatible.

Enums
RESPONSE_CODE_UNSPECIFIED Valor predeterminado
MOVED_PERMANENTLY_DEFAULT Corresponde a 301.
FOUND Corresponde a 302.
SEE_OTHER Corresponde a 303.
TEMPORARY_REDIRECT Corresponde a 307. En este caso, se retendrá el método de solicitud.
PERMANENT_REDIRECT Corresponde a 308. En este caso, se retendrá el método de solicitud.

FaultInjectionPolicy

La especificación de la inyección de errores ingresada en el tráfico para probar la resiliencia de los clientes ante la falla del servicio de destino. Como parte de la inyección de errores, cuando los clientes envían solicitudes a un destino, el proxy de cliente puede introducir retrasos en un porcentaje de solicitudes antes de enviarlas al servicio de destino. Del mismo modo, el proxy de cliente puede anular las solicitudes para un porcentaje de solicitudes.

Representación JSON
{
  "delay": {
    object (Delay)
  },
  "abort": {
    object (Abort)
  }
}
Campos
delay

object (Delay)

La especificación para insertar retrasos en las solicitudes del cliente.

abort

object (Abort)

Especificación para anular las solicitudes del cliente.

Retraso

Especificación de cómo se retrasan las solicitudes de los clientes como parte de la inserción de errores antes de enviarse a un destino.

Representación JSON
{
  "fixedDelay": string,
  "percentage": integer
}
Campos
fixedDelay

string (Duration format)

Especifica un retraso fijo antes de reenviar la solicitud.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

percentage

integer

El porcentaje de tráfico en el que se insertará la demora.

El valor debe estar entre [0, 100]

Anular

Especificación de cómo se anulan las solicitudes de los clientes como parte de la inserción de errores antes de enviarse a un destino.

Representación JSON
{
  "httpStatus": integer,
  "percentage": integer
}
Campos
httpStatus

integer

El código de estado HTTP que se usa para anular la solicitud.

Debe ser un valor entre 200 y 599, ambos incluidos.

percentage

integer

El porcentaje de tráfico que se anulará.

El valor debe estar entre [0, 100]

URLRewrite

La especificación para modificar la URL de la solicitud, antes de reenviar la solicitud al destino.

Representación JSON
{
  "pathPrefixRewrite": string,
  "hostRewrite": string
}
Campos
pathPrefixRewrite

string

Antes de reenviar la solicitud al destino seleccionado, la parte coincidente de la ruta de la solicitud se reemplaza por este valor.

hostRewrite

string

Antes de reenviar la solicitud al destino seleccionado, el encabezado del host de la solicitud se reemplaza por este valor.

RetryPolicy

Las especificaciones de los reintentos.

Representación JSON
{
  "retryConditions": [
    string
  ],
  "numRetries": integer,
  "perTryTimeout": string
}
Campos
retryConditions[]

string

Especifica una o más condiciones en las que se aplica esta política de reintentos. Los valores válidos son 5xx: el proxy intentará reintentar si el servicio de destino responde con cualquier código de respuesta 5xx o si el servicio de destino no responde, por ejemplo, desconexión, restablecimiento, tiempo de espera de lectura, error de conexión y transmisiones rechazadas.

Gateway-error: es similar a 5xx, pero solo se aplica a los códigos de respuesta 502, 503, 504.

restablecimiento: el proxy intentará volver a intentarlo si el servicio de destino no responde en absoluto (desconexión/restablecimiento/tiempo de espera de lectura)

conexión-falla: El proxy volverá a intentarlo en caso de fallas al conectarse al destino, por ejemplo, debido a tiempos de espera agotados.

retriable-4xx: El proxy volverá a intentarlo a partir de códigos de respuesta 4xx recuperables. Actualmente, el único error recuperable que se admite es el 409.

rechazada-stream: El proxy volverá a intentarlo si el destino restablece la transmisión con un código de error REFLOCATION_STREAM. Este tipo de restablecimiento indica que es seguro volver a intentarlo.

numRetries

integer

Especifica la cantidad permitida de reintentos. Este número debe ser mayor que 0. Si no se especifica, el valor predeterminado es 1.

perTryTimeout

string (Duration format)

Especifica un tiempo de espera distinto de cero por reintento.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

RequestMirrorPolicy

Especifica la política sobre cómo se duplican las solicitudes en un servicio de destino duplicado independiente. El proxy no espera respuestas del servicio paralelo. Antes de enviar tráfico al servicio paralelo, el encabezado del host o de autoridad tiene el sufijo -shadow.

Representación JSON
{
  "destination": {
    object (Destination)
  },
  "mirrorPercent": number
}
Campos
destination

object (Destination)

El destino en el que se duplicarán las solicitudes. Se ignorará el peso del destino.

mirrorPercent

number

Opcional. El porcentaje de solicitudes que se duplicarán en el destino deseado.

CorsPolicy

La especificación para permitir solicitudes de origen cruzado del cliente.

Representación JSON
{
  "allowOrigins": [
    string
  ],
  "allowOriginRegexes": [
    string
  ],
  "allowMethods": [
    string
  ],
  "allowHeaders": [
    string
  ],
  "exposeHeaders": [
    string
  ],
  "maxAge": string,
  "allowCredentials": boolean,
  "disabled": boolean
}
Campos
allowOrigins[]

string

Especifica la lista de orígenes que podrán realizar solicitudes de CORS. Se permite un origen si coincide con un elemento de allowOrigins o con un elemento de allowOriginRegexes.

allowOriginRegexes[]

string

Especifica los patrones de expresión regular que coinciden con los orígenes permitidos. Para conocer la gramática de expresiones regulares, consulta https://github.com/google/re2/wiki/Syntax.

allowMethods[]

string

Especifica el contenido del encabezado Access-Control-Allow-Methods.

allowHeaders[]

string

Especifica el contenido del encabezado Access-Control-Allow-Headers.

exposeHeaders[]

string

Especifica el contenido del encabezado Access-Control- expose-Headers.

maxAge

string

Especifica cuánto tiempo se puede almacenar en caché el resultado de una solicitud preliminar en segundos. Esto se traduce en el encabezado Access-Control-Max-Age.

allowCredentials

boolean

En respuesta a una solicitud preliminar, establecer esto en verdadero indica que la solicitud real puede incluir credenciales de usuario. Esto se traduce en el encabezado Access-Control-Allow-Credentials.

El valor predeterminado es falso.

disabled

boolean

Si es verdadero, la política de CORS se inhabilita. El valor predeterminado es falso, lo que indica que la política de CORS está activa.

StatefulSessionAffinityPolicy

La especificación para la afinidad de sesión con estado basada en cookies en la que el plano de fecha proporciona una “cookie de sesión” con el nombre “GSSA” que codifica un host de destino específico y cada solicitud que contenga esa cookie se dirigirá a ese host siempre que el host de destino esté activo y en buen estado.

La biblioteca de malla sin proxy de gRPC o el proxy de sidecar administrarán la cookie de sesión, pero el código de la aplicación cliente es responsable de copiar la cookie de cada RPC de la sesión a la siguiente.

Representación JSON
{
  "cookieTtl": string
}
Campos
cookieTtl

string (Duration format)

Obligatorio. El valor de TTL de las cookies para el encabezado Set-Cookie que genera el plano de datos. La vida útil de la cookie puede establecerse en un valor de 1 a 86,400 segundos (24 horas) inclusive.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

HttpDirectResponse

Objeto de respuesta HTTP estático que se mostrará.

Representación JSON
{
  "status": integer,

  // Union field HttpBody can be only one of the following:
  "stringBody": string,
  "bytesBody": string
  // End of list of possible types for union field HttpBody.
}
Campos
status

integer

Obligatorio. Estado que se mostrará como parte de la respuesta HTTP. Debe ser un número entero positivo.

Campo de unión HttpBody. Cuerpo que se mostrará como parte de la respuesta HTTP. HttpBody puede ser solo uno de los siguientes:
stringBody

string

Opcional. El cuerpo de la respuesta como una cadena La longitud máxima del cuerpo es de 1,024 caracteres.

bytesBody

string (bytes format)

Opcional. Cuerpo de la respuesta como bytes El tamaño máximo del cuerpo es de 4,096 B.

String codificada en base64.

Métodos

create

Crea una HttpRoute nueva en un proyecto y una ubicación determinados.

delete

Borra una sola HttpRoute.

get

Obtiene detalles de una sola HttpRoute.

getIamPolicy

Permite obtener la política de control de acceso de un recurso.

list

Muestra una lista de HttpRoute en un proyecto y una ubicación determinados.

patch

Actualiza los parámetros de una sola HttpRoute.

setIamPolicy

Permite configurar la política de control de acceso en el recurso especificado.

testIamPermissions

Permite mostrar los permisos que tiene un emisor para un recurso específico.