REST Resource: projects.locations.httpRoutes

Ressource: HttpRoute

HttpRoute est la ressource qui définit la manière dont le trafic HTTP doit être acheminé par une ressource Mesh ou Gateway.

Représentation JSON
{
  "name": string,
  "selfLink": string,
  "description": string,
  "createTime": string,
  "updateTime": string,
  "hostnames": [
    string
  ],
  "meshes": [
    string
  ],
  "gateways": [
    string
  ],
  "labels": {
    string: string,
    ...
  },
  "rules": [
    {
      object (RouteRule)
    }
  ]
}
Champs
name

string

Obligatoire. Nom de la ressource HttpRoute. Il correspond au schéma projects/*/locations/global/httpRoutes/http_route_name>.

description

string

Facultatif. Description libre de la ressource. Longueur maximale : 1 024 caractères.

createTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la création de la ressource.

Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la mise à jour de la ressource.

Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

hostnames[]

string

Obligatoire. Les noms d'hôte définissent un ensemble d'hôtes devant correspondre à l'en-tête d'hôte HTTP pour sélectionner un objet HttpRoute afin de traiter la requête. Le nom d'hôte correspond au nom de domaine complet d'un hôte réseau, tel que défini par la RFC 1123, à l'exception des points suivants: - Les adresses IP ne sont pas autorisées. - Un nom d'hôte peut être précédé d'une étiquette générique (*.). L'étiquette générique doit apparaître seule en tant que première étiquette.

Le nom d'hôte peut être "précis", c'est-à-dire un nom de domaine sans le point final d'un hôte réseau (par exemple, foo.example.com) ou "générique", c'est-à-dire un nom de domaine précédé d'un seul libellé générique (par exemple, *.example.com).

Notez que, conformément aux RFC 1035 et RFC 1123, un libellé doit contenir des caractères alphanumériques minuscules ou "-", et doit commencer et se terminer par un caractère alphanumérique. Aucun autre signe de ponctuation n'est autorisé.

Les routes associées à un réseau maillé ou à des passerelles doivent avoir des noms d'hôte uniques. Si vous essayez d'associer plusieurs routes avec des noms d'hôte en conflit, la configuration sera refusée.

Par exemple, il est acceptable que les routes des noms d'hôte *.foo.bar.com et *.bar.com soient associées au même réseau maillé (ou aux mêmes passerelles dans le même champ d'application), mais il n'est pas possible d'associer deux routes à la fois à *.bar.com et à bar.com.

meshes[]

string

Facultatif. Les maillages définissent une liste de maillages auxquels cette route HTTP est associée, en tant qu'une des règles de routage permettant d'acheminer les requêtes traitées par le maillage.

Chaque référence de maillage doit respecter le format suivant: projects/*/locations/global/meshes/<mesh_name>

La structure Mesh associée doit être de type SIDECAR.

gateways[]

string

Facultatif. Gateways définit une liste de passerelles auxquelles cette route HTTP est associée, en tant qu'une des règles de routage pour acheminer les requêtes traitées par la passerelle.

Chaque référence de passerelle doit respecter le format suivant: projects/*/locations/global/gateways/<gateway_name>

labels

map (key: string, value: string)

Facultatif. Ensemble de tags d'étiquette associés à la ressource HttpRoute.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

rules[]

object (RouteRule)

Obligatoire. Règles qui définissent la manière dont le trafic est acheminé et géré. Les règles sont mises en correspondance de manière séquentielle en fonction de la valeur RouteMatch spécifiée pour la règle.

RouteRule

Indique comment mettre en correspondance le trafic et comment l'acheminer lorsqu'il est mis en correspondance.

Représentation JSON
{
  "matches": [
    {
      object (RouteMatch)
    }
  ],
  "action": {
    object (RouteAction)
  }
}
Champs
matches[]

object (RouteMatch)

Une liste de correspondances définit les conditions utilisées pour faire correspondre la règle aux requêtes HTTP entrantes. Chaque correspondance est indépendante. Autrement dit, cette règle sera appliquée si l'une des correspondances est satisfaite.

Si aucun champ de correspondance n'est spécifié, cette règle correspondra inconditionnellement au trafic.

Si vous souhaitez configurer une règle par défaut, ajoutez une règle sans correspondance spécifiée à la fin de la liste des règles.

action

object (RouteAction)

Règle détaillée définissant comment acheminer le trafic mis en correspondance.

RouteMatch

RouteMatch définit les spécifications utilisées pour faire correspondre les requêtes. Si plusieurs types de correspondance sont définis, cette RouteMatch correspondra si TOUS les types de correspondances correspondent.

Représentation 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.
}
Champs
ignoreCase

boolean

Indique si les correspondances prefixMatch et fullPathMatch sont sensibles à la casse. La valeur par défaut est false.

headers[]

object (HeaderMatch)

Indique une liste d'en-têtes de requête HTTP à mettre en correspondance. TOUS les en-têtes fournis doivent correspondre.

queryParameters[]

object (QueryParameterMatch)

Spécifie une liste de paramètres de requête à faire correspondre. TOUS les paramètres de requête doivent correspondre.

Champ d'union PathMatch.

PathMatch ne peut être qu'un des éléments suivants :

fullPathMatch

string

La valeur du chemin d'accès de la requête HTTP doit correspondre exactement à cette valeur.

Vous ne devez utiliser qu'une seule des valeurs fullPathMatch, prefixMatch ou regexMatch.

prefixMatch

string

La valeur du chemin d'accès de la requête HTTP doit commencer par le prefixMatch spécifié. prefixMatch doit commencer par une barre oblique (/).

Vous ne devez utiliser qu'une seule des valeurs fullPathMatch, prefixMatch ou regexMatch.

regexMatch

string

La valeur du chemin d'accès de la requête HTTP doit correspondre à l'expression régulière spécifiée par regexMatch après suppression de tous les paramètres de requête et de l'ancre fournis avec l'URL d'origine. Pour en savoir plus sur la grammaire des expressions régulières, consultez la page https://github.com/google/re2/wiki/Syntax.

Vous ne devez utiliser qu'une seule des valeurs fullPathMatch, prefixMatch ou regexMatch.

HeaderMatch

Spécifie comment sélectionner une règle de routage en fonction des en-têtes de requête HTTP.

Représentation 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.
}
Champs
header

string

Nom de l'en-tête HTTP à mettre en correspondance.

invertMatch

boolean

Si spécifié, le résultat de la correspondance sera inversé avant la vérification. La valeur par défaut est définie sur "false".

Champ d'union MatchType.

MatchType ne peut être qu'un des éléments suivants :

exactMatch

string

La valeur de l'en-tête doit correspondre exactement au contenu de exactMatch.

regexMatch

string

La valeur de l'en-tête doit correspondre à l'expression régulière spécifiée dans regexMatch. Pour en savoir plus sur la grammaire des expressions régulières, consultez la page https://github.com/google/re2/wiki/Syntax.

prefixMatch

string

La valeur de l'en-tête doit commencer par le contenu de prefixMatch.

presentMatch

boolean

Un en-tête avec headerName doit exister. La correspondance a lieu que l'en-tête ait une valeur ou non.

suffixMatch

string

La valeur de l'en-tête doit se terminer par le contenu de suffixMatch.

rangeMatch

object (IntegerRange)

Si elle est spécifiée, la règle correspond si la valeur de en-tête de requête se trouve dans la plage.

IntegerRange

Représente une plage de valeurs entières.

Représentation JSON
{
  "start": integer,
  "end": integer
}
Champs
start

integer

Début de la plage (inclusif)

end

integer

Fin de la plage (exclusive)

QueryParameterMatch

Spécifications à faire correspondre à un paramètre de requête dans la requête.

Représentation 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.
}
Champs
queryParameter

string

Nom du paramètre de requête à faire correspondre.

Champ d'union MatchType.

MatchType ne peut être qu'un des éléments suivants :

exactMatch

string

La valeur du paramètre de requête doit correspondre exactement au contenu de exactMatch.

Vous ne devez définir qu'un seul élément exactMatch, regexMatch ou presentMatch.

regexMatch

string

La valeur du paramètre de requête doit correspondre à l'expression régulière spécifiée par regexMatch. Pour en savoir plus sur la grammaire des expressions régulières, consultez la page https://github.com/google/re2/wiki/Syntax.

Vous ne devez définir qu'un seul élément exactMatch, regexMatch ou presentMatch.

presentMatch

boolean

Indique que QueryParameterMatcher correspond si la requête contient un paramètre de requête, que le paramètre ait une valeur ou non.

Vous ne devez définir qu'un seul élément exactMatch, regexMatch ou presentMatch.

RouteAction

Spécifications pour le routage du trafic et l'application des règles associées.

Représentation 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
}
Champs
destinations[]

object (Destination)

Destination à laquelle le trafic doit être transféré.

redirect

object (Redirect)

Si ce champ est défini, la requête est dirigée comme configuré par ce champ.

faultInjectionPolicy

object (FaultInjectionPolicy)

Spécification de l'injection de pannes introduite dans le trafic pour tester la résilience des clients en cas de défaillance du service de backend. Dans le cadre de l'injection de pannes, lorsque les clients envoient des requêtes à un service de backend, des retards peuvent être appliqués à un pourcentage de requêtes avant de les envoyer au service de backend. De même, un pourcentage de requêtes provenant de clients peut être interrompu.

Les valeurs "timeout" et "retryPolicy" seront ignorées par les clients configurés avec une règle "faultInjectionPolicy".

requestHeaderModifier

object (HeaderModifier)

Spécification pour modifier les en-têtes d'une requête correspondante avant de l'envoyer à la destination. Si des HeaderModifiers sont définis à la fois sur la destination et la RouteAction, ils seront fusionnés. Les conflits entre les deux ne seront pas résolus dans la configuration.

responseHeaderModifier

object (HeaderModifier)

Spécification pour modifier les en-têtes d'une réponse avant de la renvoyer au client. Si des HeaderModifiers sont définis à la fois sur la destination et la RouteAction, ils seront fusionnés. Les conflits entre les deux ne seront pas résolus dans la configuration.

urlRewrite

object (URLRewrite)

Spécification de l'URL de réécriture avant de transférer les requêtes vers la destination.

timeout

string (Duration format)

Indique le délai avant expiration pour la route sélectionnée. Le délai avant expiration est calculé à partir du moment où la requête a été entièrement traitée (c'est-à-dire à la fin du flux) jusqu'à ce que la réponse soit entièrement traitée. Le délai avant expiration inclut l'ensemble des nouvelles tentatives.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

retryPolicy

object (RetryPolicy)

Indique la stratégie de nouvelle tentative associée à cet itinéraire.

requestMirrorPolicy

object (RequestMirrorPolicy)

Spécifie la stratégie concernant la façon dont les requêtes destinées à la destination des routes sont masquées vers une destination miroir distincte. Le proxy n'attend pas que la destination fantôme réponde avant de renvoyer la réponse. Avant d'envoyer du trafic au service d'ombre, l'en-tête d'hôte/d'autorité est suivi du suffixe "-shadow".

corsPolicy

object (CorsPolicy)

Spécification permettant d'autoriser les requêtes multi-origines côté client.

statefulSessionAffinity

object (StatefulSessionAffinityPolicy)

Facultatif. Spécifie l'affinité de session avec état basée sur les cookies.

directResponse

object (HttpDirectResponse)

Facultatif. Objet de réponse HTTP statique à renvoyer quelle que soit la requête.

idleTimeout

string (Duration format)

Facultatif. Indique le délai avant expiration d'inactivité pour la route sélectionnée. Le délai avant expiration d'inactivité est défini comme la période pendant laquelle aucun octet n'est envoyé ni reçu sur la connexion en amont ou en aval. Si ce paramètre n'est pas défini, le délai avant expiration par défaut est de 1 heure. Si cette valeur est définie sur 0 s, le délai avant expiration est désactivé.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

Destination

Spécifications d'une destination vers laquelle la requête doit être acheminée.

Représentation JSON
{
  "serviceName": string,
  "weight": integer,
  "requestHeaderModifier": {
    object (HeaderModifier)
  },
  "responseHeaderModifier": {
    object (HeaderModifier)
  }
}
Champs
serviceName

string

URL d'un BackendService vers lequel acheminer le trafic.

weight

integer

Spécifie la proportion de requêtes transférées vers le backend référencé par le champ serviceName. Il est calculé comme suit: - poids/somme des poids de cette liste de destinations. Pour les valeurs non nulles, il peut y avoir un epsilon par rapport à la proportion exacte définie ici, en fonction de la précision prise en charge par une implémentation.

Si un seul serviceName est spécifié et qu'il a une pondération supérieure à 0, 100% du trafic est transféré vers ce backend.

Si des poids sont spécifiés pour un nom de service, ils doivent l'être pour tous.

Si aucune pondération n'est spécifiée pour tous les services, le trafic est réparti à parts égales entre eux.

requestHeaderModifier

object (HeaderModifier)

Facultatif. Spécification pour modifier les en-têtes d'une requête correspondante avant de l'envoyer à la destination. Si des HeaderModifiers sont définis à la fois sur la destination et la RouteAction, ils seront fusionnés. Les conflits entre les deux ne seront pas résolus dans la configuration.

responseHeaderModifier

object (HeaderModifier)

Facultatif. Spécification pour modifier les en-têtes d'une réponse avant de la renvoyer au client. Si des HeaderModifiers sont définis à la fois sur la destination et la RouteAction, ils seront fusionnés. Les conflits entre les deux ne seront pas résolus dans la configuration.

HeaderModifier

Spécification pour modifier l'en-tête HTTP dans la requête HTTP et la réponse HTTP.

Représentation JSON
{
  "set": {
    string: string,
    ...
  },
  "add": {
    string: string,
    ...
  },
  "remove": [
    string
  ]
}
Champs
set

map (key: string, value: string)

Remplacez complètement/remplacez les en-têtes par la carte donnée, où la clé est le nom de l'en-tête et la valeur est la valeur de l'en-tête.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

add

map (key: string, value: string)

Ajoutez les en-têtes avec le mappage donné, où la clé correspond au nom de l'en-tête et la valeur à sa valeur.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

remove[]

string

Supprime les en-têtes (correspondant aux noms d'en-tête) spécifiés dans la liste.

Rediriger

Spécification de la redirection du trafic.

Représentation JSON
{
  "hostRedirect": string,
  "pathRedirect": string,
  "prefixRewrite": string,
  "responseCode": enum (ResponseCode),
  "httpsRedirect": boolean,
  "stripQuery": boolean,
  "portRedirect": integer
}
Champs
hostRedirect

string

L'hôte qui sera utilisé dans la réponse de redirection au lieu de celui fourni dans la requête.

pathRedirect

string

Chemin d'accès qui sera utilisé dans la réponse de redirection au lieu de celui fourni dans la requête. pathRedirect ne peut pas être fourni avec prefixRedirect. Indiquez-en un seul ou n'en fournissez aucun. Si aucun de ces éléments n'est fourni, le chemin de la requête d'origine est utilisé pour la redirection.

prefixRewrite

string

Indique que lors de la redirection, le préfixe (ou chemin) correspondant doit être remplacé par cette valeur. Cette option permet de créer des URL de manière dynamique en fonction de la requête.

responseCode

enum (ResponseCode)

Code d'état HTTP à utiliser pour la redirection.

httpsRedirect

boolean

Si cette valeur est définie sur "true", le schéma d'URL de la requête redirigée est défini sur "https". Si cette valeur est définie sur "false", le schéma d'URL de la requête redirigée reste le même que celui de la requête.

La valeur par défaut est "false".

stripQuery

boolean

Si cette valeur est définie sur "true", toute partie de requête associée de l'URL d'origine est supprimée avant la redirection de la requête. Si cette valeur est définie sur "false", la partie de la requête de l'URL d'origine est conservée.

La valeur par défaut est "false".

portRedirect

integer

Port qui sera utilisé dans la requête redirigée au lieu de celui fourni dans la requête.

ResponseCode

Code de réponse HTTP compatible.

Enums
RESPONSE_CODE_UNSPECIFIED Valeur par défaut
MOVED_PERMANENTLY_DEFAULT Correspond à 301.
FOUND Correspond à 302.
SEE_OTHER Correspond à 303.
TEMPORARY_REDIRECT Correspond à 307. Dans ce cas, la méthode de requête est conservée.
PERMANENT_REDIRECT Correspond à 308. Dans ce cas, la méthode de requête est conservée.

FaultInjectionPolicy

Spécification de l'injection de pannes introduite dans le trafic pour tester la résilience des clients en cas de défaillance du service de destination. Dans le cadre de l'injection de pannes, lorsque les clients envoient des requêtes à une destination, le proxy client peut retarder un pourcentage de requêtes avant de les envoyer au service de destination. De même, un pourcentage de requêtes peut être interrompu par le proxy client.

Représentation JSON
{
  "delay": {
    object (Delay)
  },
  "abort": {
    object (Abort)
  }
}
Champs
delay

object (Delay)

Spécification d'injection de retard dans les requêtes client.

abort

object (Abort)

Spécification pour l'abandon des requêtes client.

Délai

Spécification de la façon dont les requêtes client sont retardées dans le cadre de l'injection de fautes avant d'être envoyées à une destination.

Représentation JSON
{
  "fixedDelay": string,
  "percentage": integer
}
Champs
fixedDelay

string (Duration format)

Spécifiez un délai fixe avant de transférer la requête.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

percentage

integer

Pourcentage de trafic sur lequel un délai sera injecté.

La valeur doit être comprise entre 0 et 100.

Annuler

Spécification de la manière dont les requêtes client sont interrompues dans le cadre de l'injection de fautes avant d'être envoyées à une destination.

Représentation JSON
{
  "httpStatus": integer,
  "percentage": integer
}
Champs
httpStatus

integer

Code d'état HTTP utilisé pour interrompre la requête.

La valeur doit être comprise entre 200 et 599 inclus.

percentage

integer

Pourcentage de trafic qui sera abandonné.

La valeur doit être comprise entre 0 et 100.

URLRewrite

Spécification pour modifier l'URL de la requête avant de la transférer vers la destination.

Représentation JSON
{
  "pathPrefixRewrite": string,
  "hostRewrite": string
}
Champs
pathPrefixRewrite

string

Avant le transfert de la requête vers la destination sélectionnée, la partie correspondante du chemin de la requête est remplacée par cette valeur.

hostRewrite

string

Avant le transfert de la requête vers la destination sélectionnée, l'en-tête d'hôte de la requête est remplacé par cette valeur.

RetryPolicy

Spécifications des nouvelles tentatives.

Représentation JSON
{
  "retryConditions": [
    string
  ],
  "numRetries": integer,
  "perTryTimeout": string
}
Champs
retryConditions[]

string

Indique une ou plusieurs conditions pour lesquelles cette stratégie de nouvelle tentative s'applique. Les valeurs valides sont les suivantes: 5xx: le proxy tente une nouvelle tentative si le service de destination répond avec un code de réponse 5xx ou s'il ne répond pas du tout (par exemple: déconnexion, réinitialisation, expiration du délai de lecture, échec de la connexion et flux refusés).

gateway-error: semblable aux codes 5xx, mais ne s'applique qu'aux codes de réponse 502, 503 ou 504.

reset: le proxy tente une nouvelle tentative si le service de destination ne répond pas du tout (déconnexion/réinitialisation/délai avant expiration de la lecture)

connect-failure: le proxy réessaiera en cas d'échec de la connexion à la destination, par exemple en raison d'un délai d'attente de connexion.

retriable-4xx: le proxy effectuera une nouvelle tentative pour les codes de réponse 4xx récupérables. Actuellement, la seule erreur récupérable prise en charge est 409.

refused-stream: le proxy réessayera si la destination réinitialise le flux avec un code d'erreur REFUSED_STREAM. Ce type de réinitialisation indique qu'il est possible de réessayer.

numRetries

integer

Spécifie le nombre de tentatives autorisées. Ce nombre doit être supérieur à 0. Si aucune valeur n'est spécifiée, la valeur par défaut est 1.

perTryTimeout

string (Duration format)

Spécifie un délai avant expiration non nul par tentative de nouvelle tentative.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

RequestMirrorPolicy

Spécifie la stratégie concernant la mise en miroir des requêtes vers un service de destination distinct. Le proxy n'attend pas de réponse du service fictif. Avant d'envoyer du trafic au service d'ombre, l'en-tête d'hôte/d'autorité est suivi du suffixe "-shadow".

Représentation JSON
{
  "destination": {
    object (Destination)
  },
  "mirrorPercent": number
}
Champs
destination

object (Destination)

Destination à laquelle les requêtes seront mises en miroir. La pondération de la destination sera ignorée.

mirrorPercent

number

Facultatif. Pourcentage de requêtes à dupliquer vers la destination souhaitée.

CorsPolicy

Spécification permettant d'autoriser les requêtes multi-origines côté client.

Représentation JSON
{
  "allowOrigins": [
    string
  ],
  "allowOriginRegexes": [
    string
  ],
  "allowMethods": [
    string
  ],
  "allowHeaders": [
    string
  ],
  "exposeHeaders": [
    string
  ],
  "maxAge": string,
  "allowCredentials": boolean,
  "disabled": boolean
}
Champs
allowOrigins[]

string

Spécifie la liste des origines qui seront autorisées à effectuer des requêtes CORS. Une origine est autorisée si elle correspond à un élément de "allowOrigins" ou de "allowOriginRegexes".

allowOriginRegexes[]

string

Spécifie les modèles d'expression régulière correspondant aux origines autorisées. Pour en savoir plus sur la grammaire des expressions régulières, consultez la page https://github.com/google/re2/wiki/Syntax.

allowMethods[]

string

Spécifie le contenu de l'en-tête Access-Control-Allow-Methods.

allowHeaders[]

string

Spécifie le contenu de l'en-tête Access-Control-Allow-Headers.

exposeHeaders[]

string

Spécifie le contenu de l'en-tête Access-Control-Expose-Headers.

maxAge

string

Indique la durée (en secondes) de mise en cache des résultats d'une requête préliminaire. Cela se traduit par l'en-tête Access-Control-Max-Age.

allowCredentials

boolean

En réponse à une requête préliminaire, définir cette valeur sur "true" indique que la requête réelle peut inclure des identifiants utilisateur. Cela se traduit par l'en-tête Access-Control-Allow-Credentials.

La valeur par défaut est Faux (false).

disabled

boolean

Si la valeur est "true", la règle CORS est désactivée. La valeur par défaut est "false", ce qui indique que la règle CORS est en vigueur.

StatefulSessionAffinityPolicy

Spécification de l'affinité de session avec état basée sur les cookies, où le plan de date fournit un "cookie de session" nommé "GSSA" qui encode un hôte de destination spécifique, et chaque requête contenant ce cookie sera dirigée vers cet hôte tant qu'il restera opérationnel.

La bibliothèque de maillage sans proxy gRPC ou le proxy side-car gèrent le cookie de session, mais le code de l'application cliente est chargé de copier le cookie de chaque RPC de la session à la suivante.

Représentation JSON
{
  "cookieTtl": string
}
Champs
cookieTtl

string (Duration format)

Obligatoire. Valeur TTL du cookie pour l'en-tête Set-Cookie généré par le plan de données. La durée de vie du cookie peut être définie sur une valeur comprise entre 1 et 86 400 secondes (24 heures) inclus.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

HttpDirectResponse

Objet de réponse HTTP statique à renvoyer.

Représentation 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.
}
Champs
status

integer

Obligatoire. État à renvoyer dans la réponse HTTP. Vous devez saisir un entier positif.

Champ d'union HttpBody. Corps à renvoyer dans la réponse HTTP. HttpBody ne peut être qu'un des éléments suivants :
stringBody

string

Facultatif. Corps de la réponse sous forme de chaîne. La longueur maximale du corps est de 1 024 caractères.

bytesBody

string (bytes format)

Facultatif. Corps de la réponse sous forme d'octets. La taille maximale du corps est de 4 096 octets.

Chaîne encodée en base64.

Méthodes

create

Crée une route HTTP dans un projet et un emplacement donnés.

delete

Supprime un seul HttpRoute.

get

Récupère les informations d'un seul HttpRoute.

list

Répertorie les HttpRoutes d'un projet et d'un emplacement donnés.

patch

Met à jour les paramètres d'un seul objet HttpRoute.

setIamPolicy

Définit la stratégie de contrôle d'accès de la ressource spécifiée.

testIamPermissions

Renvoie les autorisations qu'un appelant a sur la ressource spécifiée.