REST Resource: projects.locations.httpRoutes

Recurso: HttpRoute

HttpRoute é o recurso que define como o tráfego HTTP deve ser encaminhado por um recurso de malha ou gateway.

Representação 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

Identificador. Nome do recurso HttpRoute. Corresponde ao padrão projects/*/locations/global/httpRoutes/http_route_name>.

description

string

Opcional. Uma descrição de texto livre do recurso. Comprimento máximo de 1024 carateres.

createTime

string (Timestamp format)

Apenas saída. A data/hora em que o recurso foi criado.

Usa RFC 3339, em que o resultado gerado é sempre normalizado em Z e usa 0, 3, 6 ou 9 dígitos fracionários. Também são aceites desvios diferentes de "Z". Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Apenas saída. A data/hora em que o recurso foi atualizado.

Usa RFC 3339, em que o resultado gerado é sempre normalizado em Z e usa 0, 3, 6 ou 9 dígitos fracionários. Também são aceites desvios diferentes de "Z". Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

hostnames[]

string

Obrigatório. Os nomes de anfitriões definem um conjunto de anfitriões que devem corresponder ao cabeçalho do anfitrião HTTP para selecionar uma HttpRoute para processar o pedido. O nome do anfitrião é o nome do domínio totalmente qualificado de um anfitrião de rede, conforme definido pela RFC 1123, com a exceção de que: - Os IPs não são permitidos. – Um nome de anfitrião pode ser precedido de uma etiqueta de caráter universal (*.). A etiqueta de caráter universal tem de aparecer sozinha como a primeira etiqueta.

O nome do anfitrião pode ser "preciso", que é um nome de domínio sem o ponto final de um anfitrião de rede (por exemplo, foo.example.com) ou "caráter universal", que é um nome de domínio precedido de uma única etiqueta de caráter universal (por exemplo, *.example.com).

Tenha em atenção que, de acordo com a RFC1035 e a RFC1123, uma etiqueta tem de consistir em carateres alfanuméricos em minúsculas ou "-" e tem de começar e terminar com um caráter alfanumérico. Não é permitida outra pontuação.

As rotas associadas a uma malha ou a gateways têm de ter nomes de anfitrião exclusivos. Se tentar anexar várias rotas com nomes de anfitrião em conflito, a configuração é rejeitada.

Por exemplo, embora seja aceitável que as rotas para os nomes de anfitrião *.foo.bar.com e *.bar.com estejam associadas à mesma malha (ou gateways no mesmo âmbito), não é possível associar duas rotas a *.bar.com ou a bar.com.

meshes[]

string

Opcional. Meshes define uma lista de malhas às quais esta HttpRoute está associada, como uma das regras de encaminhamento para encaminhar os pedidos processados pela malha.

Cada referência de malha deve corresponder ao padrão: projects/*/locations/global/meshes/<mesh_name>

O Mesh anexado deve ser do tipo SIDECAR

gateways[]

string

Opcional. Gateways define uma lista de gateways aos quais esta HttpRoute está associada, como uma das regras de encaminhamento para encaminhar os pedidos processados pelo gateway.

Cada referência de gateway deve corresponder ao padrão: projects/*/locations/global/gateways/<gateway_name>

labels

map (key: string, value: string)

Opcional. Conjunto de etiquetas associadas ao recurso HttpRoute.

Um objeto que contém uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

rules[]

object (RouteRule)

Obrigatório. Regras que definem como o tráfego é encaminhado e processado. As regras são correspondidas sequencialmente com base no RouteMatch especificado para a regra.

RouteRule

Especifica como fazer a correspondência do tráfego e como encaminhar o tráfego quando é feita a correspondência.

Representação JSON
{
  "matches": [
    {
      object (RouteMatch)
    }
  ],
  "action": {
    object (RouteAction)
  }
}
Campos
matches[]

object (RouteMatch)

Uma lista de correspondências define as condições usadas para fazer corresponder a regra com os pedidos HTTP recebidos. Cada correspondência é independente, ou seja, esta regra vai ter correspondência se QUALQUER uma das correspondências for satisfeita.

Se não for especificado nenhum campo de correspondências, esta regra vai corresponder incondicionalmente ao tráfego.

Se quiser configurar uma regra predefinida, adicione uma regra sem correspondências especificadas no final da lista de regras.

action

object (RouteAction)

A regra detalhada que define como encaminhar o tráfego correspondente.

RouteMatch

O RouteMatch define as especificações usadas para fazer corresponder pedidos. Se forem definidos vários tipos de correspondência, esta RouteMatch vai corresponder se TODOS os tipos de correspondências forem correspondentes.

Representação 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 se as correspondências prefixMatch e fullPathMatch são sensíveis a maiúsculas e minúsculas. O valor predefinido é false.

headers[]

object (HeaderMatch)

Especifica uma lista de cabeçalhos de pedidos HTTP para fazer a correspondência. TODOS os cabeçalhos fornecidos têm de corresponder.

queryParameters[]

object (QueryParameterMatch)

Especifica uma lista de parâmetros de consulta para fazer a correspondência. TODOS os parâmetros de consulta têm de corresponder.

Campo de união PathMatch.

PathMatch só pode ser uma das seguintes opções:

fullPathMatch

string

O valor do caminho do pedido HTTP deve corresponder exatamente a este valor.

Só deve ser usado um dos seguintes: fullPathMatch, prefixMatch ou regexMatch.

prefixMatch

string

O valor do caminho do pedido HTTP tem de começar com o prefixMatch especificado. O prefixMatch tem de começar com /.

Só deve ser usado um dos seguintes: fullPathMatch, prefixMatch ou regexMatch.

regexMatch

string

O valor do caminho do pedido HTTP tem de satisfazer a expressão regular especificada por regexMatch após a remoção de quaisquer parâmetros de consulta e âncora fornecidos com o URL original. Para a gramática das expressões regulares, consulte https://github.com/google/re2/wiki/Syntax

Só deve ser usado um dos seguintes: fullPathMatch, prefixMatch ou regexMatch.

HeaderMatch

Especifica como selecionar uma regra de encaminhamento com base nos cabeçalhos de pedidos HTTP.

Representação 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

O nome do cabeçalho HTTP com o qual estabelecer correspondência.

invertMatch

boolean

Se for especificado, o resultado da correspondência é invertido antes da verificação. O valor predefinido está definido como falso.

Campo de união MatchType.

MatchType só pode ser uma das seguintes opções:

exactMatch

string

O valor do cabeçalho deve corresponder exatamente ao conteúdo de exactMatch.

regexMatch

string

O valor do cabeçalho tem de corresponder à expressão regular especificada em regexMatch. Para a gramática das expressões regulares, consulte: https://github.com/google/re2/wiki/Syntax

prefixMatch

string

O valor do cabeçalho tem de começar com o conteúdo de prefixMatch.

presentMatch

boolean

Tem de existir um cabeçalho com headerName. A correspondência ocorre independentemente de o cabeçalho ter ou não um valor.

suffixMatch

string

O valor do cabeçalho tem de terminar com o conteúdo de suffixMatch.

rangeMatch

object (IntegerRange)

Se for especificado, a regra vai corresponder se o valor do cabeçalho do pedido estiver dentro do intervalo.

IntegerRange

Representa um intervalo de valores inteiros.

Representação JSON
{
  "start": integer,
  "end": integer
}
Campos
start

integer

Início do intervalo (inclusive)

end

integer

Fim do intervalo (exclusive)

QueryParameterMatch

Especificações para corresponder a um parâmetro de consulta no pedido.

Representação 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

O nome do parâmetro de consulta a corresponder.

Campo de união MatchType.

MatchType só pode ser uma das seguintes opções:

exactMatch

string

O valor do parâmetro de consulta tem de corresponder exatamente ao conteúdo de exactMatch.

Só é possível definir um dos seguintes: exactMatch, regexMatch ou presentMatch.

regexMatch

string

O valor do parâmetro de consulta tem de corresponder à expressão regular especificada por regexMatch. Para a gramática das expressões regulares, consulte https://github.com/google/re2/wiki/Syntax

Só é possível definir um dos seguintes: exactMatch, regexMatch ou presentMatch.

presentMatch

boolean

Especifica que o QueryParameterMatcher corresponde se o pedido contiver o parâmetro de consulta, independentemente de o parâmetro ter ou não um valor.

Só é possível definir um dos seguintes: exactMatch, regexMatch ou presentMatch.

RouteAction

As especificações para encaminhar o tráfego e aplicar as políticas associadas.

Representação 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)

O destino para o qual o tráfego deve ser encaminhado.

redirect

object (Redirect)

Se estiver definido, o pedido é direcionado conforme configurado por este campo.

faultInjectionPolicy

object (FaultInjectionPolicy)

A especificação para a injeção de falhas introduzida no tráfego para testar a capacidade de recuperação dos clientes em caso de falha do serviço de back-end. Como parte da injeção de falhas, quando os clientes enviam pedidos para um serviço de back-end, podem ser introduzidos atrasos numa percentagem de pedidos antes de enviar esses pedidos para o serviço de back-end. Da mesma forma, os pedidos dos clientes podem ser anulados para uma percentagem de pedidos.

O timeout e a retryPolicy são ignorados pelos clientes configurados com uma faultInjectionPolicy

requestHeaderModifier

object (HeaderModifier)

A especificação para modificar os cabeçalhos de um pedido correspondente antes da entrega do pedido ao destino. Se os HeaderModifiers estiverem definidos no destino e no RouteAction, são unidos. Os conflitos entre os dois não são resolvidos na configuração.

responseHeaderModifier

object (HeaderModifier)

A especificação para modificar os cabeçalhos de uma resposta antes de a enviar de volta ao cliente. Se os HeaderModifiers estiverem definidos no destino e no RouteAction, são unidos. Os conflitos entre os dois não são resolvidos na configuração.

urlRewrite

object (URLRewrite)

A especificação para reescrever o URL antes de encaminhar pedidos para o destino.

timeout

string (Duration format)

Especifica o limite de tempo para o trajeto selecionado. O tempo limite é calculado a partir do momento em que o pedido é totalmente processado (ou seja, o fim da transmissão) até que a resposta seja totalmente processada. O tempo limite inclui todas as novas tentativas.

Uma duração em segundos com até nove dígitos fracionários, que termina com "s". Exemplo: "3.5s".

retryPolicy

object (RetryPolicy)

Especifica a política de repetição associada a esta rota.

requestMirrorPolicy

object (RequestMirrorPolicy)

Especifica a política sobre como os pedidos destinados ao destino de rotas são duplicados para um destino espelhado separado. O proxy não aguarda que o destino secundário responda antes de devolver a resposta. Antes de enviar tráfego para o serviço de sombra, o cabeçalho host/authority tem o sufixo -shadow.

corsPolicy

object (CorsPolicy)

A especificação para permitir pedidos de origem cruzada do lado do cliente.

statefulSessionAffinity

object (StatefulSessionAffinityPolicy)

Opcional. Especifica a afinidade de sessão com estado baseada em cookies.

directResponse

object (HttpDirectResponse)

Opcional. Objeto de resposta HTTP estático a ser devolvido independentemente do pedido.

idleTimeout

string (Duration format)

Opcional. Especifica o limite de tempo de inatividade para o trajeto selecionado. O limite de tempo de inatividade é definido como o período em que não são enviados nem recebidos bytes na ligação a montante ou a jusante. Se não estiver definido, o tempo limite de inatividade predefinido é de 1 hora. Se for definido como 0 s, o limite de tempo é desativado.

Uma duração em segundos com até nove dígitos fracionários, que termina com "s". Exemplo: "3.5s".

Destino

Especificações de um destino para o qual o pedido deve ser encaminhado.

Representação JSON
{
  "serviceName": string,
  "weight": integer,
  "requestHeaderModifier": {
    object (HeaderModifier)
  },
  "responseHeaderModifier": {
    object (HeaderModifier)
  }
}
Campos
serviceName

string

O URL de um BackendService para o qual encaminhar o tráfego.

weight

integer

Especifica a proporção de pedidos encaminhados para o back-end referenciado pelo campo serviceName. Este valor é calculado da seguinte forma: - peso/Soma(pesos nesta lista de destinos). Para valores diferentes de zero, pode haver algum épsilon da proporção exata definida aqui, consoante a precisão suportada por uma implementação.

Se for especificado apenas um serviceName e tiver um peso superior a 0, 100% do tráfego é encaminhado para esse back-end.

Se forem especificados pesos para qualquer nome de serviço, têm de ser especificados para todos.

Se os pesos não forem especificados para todos os serviços, o tráfego é distribuído em proporções iguais por todos eles.

requestHeaderModifier

object (HeaderModifier)

Opcional. A especificação para modificar os cabeçalhos de um pedido correspondente antes da entrega do pedido ao destino. Se os HeaderModifiers estiverem definidos no destino e no RouteAction, são unidos. Os conflitos entre os dois não são resolvidos na configuração.

responseHeaderModifier

object (HeaderModifier)

Opcional. A especificação para modificar os cabeçalhos de uma resposta antes de a enviar de volta ao cliente. Se os HeaderModifiers estiverem definidos no destino e no RouteAction, são unidos. Os conflitos entre os dois não são resolvidos na configuração.

HeaderModifier

A especificação para modificar o cabeçalho HTTP no pedido HTTP e na resposta HTTP.

Representação JSON
{
  "set": {
    string: string,
    ...
  },
  "add": {
    string: string,
    ...
  },
  "remove": [
    string
  ]
}
Campos
set

map (key: string, value: string)

Substitua completamente os cabeçalhos pelo mapa fornecido, em que a chave é o nome do cabeçalho e o valor é o valor do cabeçalho.

Um objeto que contém uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

add

map (key: string, value: string)

Adicione os cabeçalhos com o mapa fornecido, em que a chave é o nome do cabeçalho e o valor é o valor do cabeçalho.

Um objeto que contém uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

remove[]

string

Remova os cabeçalhos (com correspondência pelos nomes dos cabeçalhos) especificados na lista.

Redirecionar

A especificação para redirecionar tráfego.

Representação JSON
{
  "hostRedirect": string,
  "pathRedirect": string,
  "prefixRewrite": string,
  "responseCode": enum (ResponseCode),
  "httpsRedirect": boolean,
  "stripQuery": boolean,
  "portRedirect": integer
}
Campos
hostRedirect

string

O anfitrião que vai ser usado na resposta de redirecionamento em vez do que foi fornecido no pedido.

pathRedirect

string

O caminho que vai ser usado na resposta de redirecionamento em vez do que foi fornecido no pedido. pathRedirect não pode ser fornecido juntamente com prefixRedirect. Forneça apenas um ou nenhum. Se não for fornecido nenhum dos dois, é usado o caminho do pedido original para o redirecionamento.

prefixRewrite

string

Indica que, durante o redirecionamento, o prefixo (ou o caminho) correspondente deve ser trocado por este valor. Esta opção permite que os URLs sejam criados dinamicamente com base no pedido.

responseCode

enum (ResponseCode)

O código de estado HTTP a usar para o redirecionamento.

httpsRedirect

boolean

Se estiver definida como verdadeira, o esquema de URL no pedido redirecionado é definido como https. Se for definido como falso, o esquema de URL do pedido redirecionado permanece igual ao do pedido.

O valor predefinido é false.

stripQuery

boolean

Se for definido como verdadeiro, qualquer parte da consulta que acompanhe o URL original é removida antes de redirecionar o pedido. Se for definido como falso, a parte da consulta do URL original é mantida.

O valor predefinido é false.

portRedirect

integer

A porta que vai ser usada no pedido redirecionado em vez da que foi fornecida no pedido.

ResponseCode

Código de resposta HTTP suportado.

Enumerações
RESPONSE_CODE_UNSPECIFIED Valor predefinido
MOVED_PERMANENTLY_DEFAULT Corresponde a 301.
FOUND Corresponde a 302.
SEE_OTHER Corresponde a 303.
TEMPORARY_REDIRECT Corresponde a 307. Neste caso, o método de pedido é mantido.
PERMANENT_REDIRECT Corresponde a 308. Neste caso, o método de pedido é mantido.

FaultInjectionPolicy

A especificação para a injeção de falhas introduzida no tráfego para testar a capacidade de recuperação dos clientes em caso de falha do serviço de destino. Como parte da injeção de falhas, quando os clientes enviam pedidos para um destino, o proxy do cliente pode introduzir atrasos numa percentagem de pedidos antes de os enviar para o serviço de destino. Da mesma forma, os pedidos podem ser anulados pelo proxy do cliente para uma percentagem dos pedidos.

Representação JSON
{
  "delay": {
    object (Delay)
  },
  "abort": {
    object (Abort)
  }
}
Campos
delay

object (Delay)

A especificação para injetar um atraso nos pedidos do cliente.

abort

object (Abort)

A especificação para anular pedidos de clientes.

Atraso

Especificação de como os pedidos do cliente são atrasados como parte da injeção de falhas antes de serem enviados para um destino.

Representação JSON
{
  "fixedDelay": string,
  "percentage": integer
}
Campos
fixedDelay

string (Duration format)

Especifique um atraso fixo antes de encaminhar o pedido.

Uma duração em segundos com até nove dígitos fracionários, que termina com "s". Exemplo: "3.5s".

percentage

integer

A percentagem de tráfego na qual o atraso vai ser injetado.

O valor tem de estar compreendido entre [0 e 100]

Interromper

Especificação de como os pedidos do cliente são anulados como parte da injeção de falhas antes de serem enviados para um destino.

Representação JSON
{
  "httpStatus": integer,
  "percentage": integer
}
Campos
httpStatus

integer

O código de estado HTTP usado para anular o pedido.

O valor tem de estar entre 200 e 599, inclusive.

percentage

integer

A percentagem de tráfego que vai ser anulada.

O valor tem de estar compreendido entre [0 e 100]

URLRewrite

A especificação para modificar o URL do pedido, antes de encaminhar o pedido para o destino.

Representação JSON
{
  "pathPrefixRewrite": string,
  "hostRewrite": string
}
Campos
pathPrefixRewrite

string

Antes de encaminhar o pedido para o destino selecionado, a parte correspondente do caminho do pedido é substituída por este valor.

hostRewrite

string

Antes de encaminhar o pedido para o destino selecionado, o cabeçalho do anfitrião do pedido é substituído por este valor.

RetryPolicy

As especificações para novas tentativas.

Representação JSON
{
  "retryConditions": [
    string
  ],
  "numRetries": integer,
  "perTryTimeout": string
}
Campos
retryConditions[]

string

Especifica uma ou mais condições quando esta política de repetição se aplica. Os valores válidos são: 5xx: o proxy tenta novamente se o serviço de destino responder com qualquer código de resposta 5xx ou se o serviço de destino não responder de todo. Por exemplo: desconexão, reposição, tempo limite de leitura, falha de ligação e streams recusadas.

gateway-error: semelhante a 5xx, mas aplica-se apenas aos códigos de resposta 502, 503 e 504.

reset: o proxy tenta novamente se o serviço de destino não responder (desligar/reposição/tempo limite de leitura)

connect-failure: o proxy vai tentar novamente em caso de falhas de ligação ao destino, por exemplo, devido a limites de tempo de ligação.

retriable-4xx: o proxy vai tentar novamente os códigos de resposta 4xx repetíveis. Atualmente, o único erro repetível suportado é o 409.

refused-stream: o proxy vai tentar novamente se o destino repuser a stream com um código de erro REFUSED_STREAM. Este tipo de reposição indica que é seguro tentar novamente.

numRetries

integer

Especifica o número permitido de novas tentativas. Este número tem de ser > 0. Se não for especificado, a predefinição é 1.

perTryTimeout

string (Duration format)

Especifica um limite de tempo diferente de zero por tentativa de repetição.

Uma duração em segundos com até nove dígitos fracionários, que termina com "s". Exemplo: "3.5s".

RequestMirrorPolicy

Especifica a política sobre como os pedidos são duplicados para um serviço de destino espelhado separado. O proxy não aguarda respostas do serviço de sombra. Antes de enviar tráfego para o serviço de sombra, o cabeçalho host/authority tem o sufixo -shadow.

Representação JSON
{
  "destination": {
    object (Destination)
  },
  "mirrorPercent": number
}
Campos
destination

object (Destination)

O destino para o qual os pedidos vão ser replicados. A ponderação do destino é ignorada.

mirrorPercent

number

Opcional. A percentagem de pedidos a serem espelhados para o destino pretendido.

CorsPolicy

A especificação para permitir pedidos de origem cruzada do lado do cliente.

Representação JSON
{
  "allowOrigins": [
    string
  ],
  "allowOriginRegexes": [
    string
  ],
  "allowMethods": [
    string
  ],
  "allowHeaders": [
    string
  ],
  "exposeHeaders": [
    string
  ],
  "maxAge": string,
  "allowCredentials": boolean,
  "disabled": boolean
}
Campos
allowOrigins[]

string

Especifica a lista de origens que podem fazer pedidos CORS. Uma origem é permitida se corresponder a um item em allowOrigins ou a um item em allowOriginRegexes.

allowOriginRegexes[]

string

Especifica os padrões de expressões regulares que correspondem às origens permitidas. Para a gramática das expressões regulares, consulte https://github.com/google/re2/wiki/Syntax.

allowMethods[]

string

Especifica o conteúdo do cabeçalho Access-Control-Allow-Methods.

allowHeaders[]

string

Especifica o conteúdo do cabeçalho Access-Control-Allow-Headers.

exposeHeaders[]

string

Especifica o conteúdo do cabeçalho Access-Control-Expose-Headers.

maxAge

string

Especifica durante quanto tempo o resultado de um pedido de verificação prévia pode ser colocado em cache em segundos. Isto traduz-se no cabeçalho Access-Control-Max-Age.

allowCredentials

boolean

Em resposta a um pedido de pré-voo, a definição desta opção como verdadeira indica que o pedido real pode incluir credenciais do utilizador. Isto traduz-se no cabeçalho Access-Control-Allow-Credentials.

O valor predefinido é False.

disabled

boolean

Se for verdadeiro, a política CORS é desativada. O valor predefinido é false, o que indica que a política de CORS está em vigor.

StatefulSessionAffinityPolicy

A especificação para a afinidade de sessão com estado baseada em cookies, em que o plano de dados fornece um "cookie de sessão" com o nome "GSSA" que codifica um anfitrião de destino específico e cada pedido que contenha esse cookie é direcionado para esse anfitrião, desde que o anfitrião de destino permaneça ativo e em bom estado.

A biblioteca de malha sem proxy gRPC ou o proxy sidecar vai gerir o cookie de sessão, mas o código da aplicação cliente é responsável por copiar o cookie de cada RPC na sessão para a seguinte.

Representação JSON
{
  "cookieTtl": string
}
Campos
cookieTtl

string (Duration format)

Obrigatório. O valor TTL do cookie para o cabeçalho Set-Cookie gerado pelo plano de dados. A duração do cookie pode ser definida para um valor entre 1 e 86 400 segundos (24 horas), inclusive.

Uma duração em segundos com até nove dígitos fracionários, que termina com "s". Exemplo: "3.5s".

HttpDirectResponse

Objeto de resposta HTTP estático a ser devolvido.

Representação 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

Obrigatório. Estado a devolver como parte da resposta HTTP. Tem de ser um número inteiro positivo.

Campo de união HttpBody. Corpo a devolver como parte da resposta HTTP. HttpBody só pode ser uma das seguintes opções:
stringBody

string

Opcional. Corpo da resposta como uma string. O comprimento máximo do corpo é de 1024 carateres.

bytesBody

string (bytes format)

Opcional. Corpo da resposta como bytes. O tamanho máximo do corpo é de 4096 B.

Uma string codificada em Base64.

Métodos

create

Cria uma nova HttpRoute num determinado projeto e localização.

delete

Elimina um único HttpRoute.

get

Obtém detalhes de uma única HttpRoute.

list

Apresenta HttpRoute num determinado projeto e localização.

patch

Atualiza os parâmetros de uma única HttpRoute.