

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Définition du mode de routage de votre nom de domaine personnalisé
<a name="set-routing-mode"></a>

Vous pouvez choisir le mode de routage qu'API Gateway utilise pour acheminer le trafic vers votre APIs. Pour de plus amples informations, veuillez consulter [Envoyez du trafic vers vous APIs via votre nom de domaine personnalisé dans API Gateway](rest-api-routing-mode.md). Cette section décrit les modes de routage des noms de domaine personnalisés. Vous devez définir un mode de routage pour votre nom de domaine personnalisé afin d'acheminer le trafic vers votre APIs. Les modèles de routage pris en charge sont les suivants :
+ **ROUTING\$1RULE\$1THEN\$1 API\$1MAPPING** — Utilisez ce mode pour envoyer du trafic vers vous APIs avec des règles de routage et des mappages d'API. Dans ce mode, toutes les règles de routage ont la priorité sur les mappages d’API. Pour voir un exemple de ce mode, consultez [Exemple 2 : règles de routage et mappages d’API](rest-api-routing-rules-examples.md#rest-api-routing-rules-examples-rule-and-mappings). 
+ **ROUTING\$1RULE\$1ONLY — Utilisez ce mode pour autoriser uniquement** les règles de routage à envoyer du trafic vers votre. APIs Lorsque votre nom de domaine personnalisé utilise ce mode, vous ne pouvez pas créer de mappage d'API, mais vous pouvez utiliser la [get-api-mappings](https://docs.aws.amazon.com/cli/latest/reference/apigatewayv2/get-api-mappings.html)commande pour les afficher. Les appelants de l’API ne peuvent pas utiliser de mappages d’API pour accéder à ce nom de domaine.
+ **API\$1MAPPING\$1ONLY** — Utilisez ce mode pour autoriser uniquement les mappages d'API à envoyer du trafic vers votre. APIs Si votre nom de domaine personnalisé utilise ce mode, vous ne pouvez pas créer de règles de routage, mais vous pouvez utiliser la commande `list-routing-rules` pour les afficher. Les appelants de l’API ne peuvent pas utiliser de règles de routage pour accéder à ce nom de domaine.

  Il s’agit du mode de routage par défaut pour tous vos noms de domaine existants et pour tous les nouveaux noms de domaine que vous créez.

Lorsque vous créez un nom de domaine personnalisé avec `apigateway`, `API_MAPPING_ONLY` est appelé `BASE_PATH_MAPPING_ONLY` et `ROUTING_RULE_THEN_API_MAPPING` est appelé `ROUTING_RULE_THEN_BASE_PATH_MAPPING`. Ce comportement n'est présent que pour AWS CLI CloudFormation, ou aucun SDKs, pas dans le AWS Management Console.

La procédure suivante montre comment modifier le mode de routage d’un nom de domaine personnalisé existant. Lorsque vous modifiez le mode de routage de votre nom de domaine personnalisé, les appelants de l’API ne peuvent pas accéder à votre nom de domaine en utilisant des modes de routage non pris en charge.

------
#### [ AWS Management Console ]

1. Connectez-vous à la console API Gateway à l'adresse [https://console.aws.amazon.com/apigateway.](https://console.aws.amazon.com/apigateway)

1. Sélectionnez **Noms de domaine personnalisés** dans le volet de navigation principal.

1. Choisissez un nom de domaine personnalisé.

1. Sous **Détails du domaine**, choisissez **Modifier**.

1. Pour le **mode de routage**, choisissez **API\$1MAPPINGROUTING\$1RULE\$1THEN\$1**.

1. Choisissez **Enregistrer**.

Si vous remplacez le mode de routage par `ROUTING_RULE_ONLY` ou `API_MAPPING_ONLY`, les mappages d’API ou les règles de routage que vous avez créés sont supprimés de la page Informations de nom de domaine de la console. Si vous modifiez le mode de routage pour prendre en charge soit des règles de routage soit des mappages d’API, ces ressources seront renvoyées.

------
#### [ AWS CLI - apigatewayv2 ]

La [update-domain-name](https://docs.aws.amazon.com/cli/latest/reference/apigatewayv2/update-domain-name.html)commande suivante met à jour un nom de domaine pour utiliser le mode de routage `ROUTING_RULE_THEN_API_MAPPING` :

```
aws apigatewayv2 update-domain-name \
  --domain-name 'api.example.com' \
  --routing-mode "ROUTING_RULE_THEN_API_MAPPING"
```

Le résultat se présente comme suit :

```
{
"ApiMappingSelectionExpression": "$request.basepath",
"DomainName": "api.example.com",
"DomainNameArn": "arn:aws:apigateway:us-west-2::/domainnames/api.example.com",
"DomainNameConfigurations": [
  {
      "ApiGatewayDomainName": "d-abcdefg.execute-api.us-west-2.amazonaws.com",
      "CertificateArn": "arn:aws:acm:us-west-2:111122223333:certificate/abcdefg-123456-abcdefg",
      "DomainNameStatus": "AVAILABLE",
      "EndpointType": "REGIONAL",
      "HostedZoneId": "Z2OJLYMUO9EFXC",
      "SecurityPolicy": "TLS_1_2"
   }
 ],
"RoutingMode": "ROUTING_RULE_THEN_API_MAPPING",
"Tags": {}
}
```

------
#### [ AWS CLI - apigateway ]

La [update-domain-name](https://docs.aws.amazon.com/cli/latest/reference/apigateway/update-domain-name.html)commande suivante met à jour un nom de domaine personnalisé privé pour utiliser le mode de routage `ROUTING_RULE_THEN_BASE_PATH_MAPPING` :

```
aws apigateway update-domain-name \
  --domain-name 'private.example.com' \
  --patch-operations "op='replace',path='/routingMode',value='ROUTING_RULE_THEN_BASE_PATH_MAPPING'"
```

Le résultat se présente comme suit :

```
{
"domainName": "private.example.com",
"domainNameId": "abcd1234",
"domainNameArn": "arn:aws:apigateway:us-west-2:111122223333:/domainnames/private.example.com+abcd1234",
"certificateArn": "arn:aws:acm:us-west-2:111122223333:certificate/a1b2c3d4-5678-90ab-cdef",
"certificateUploadDate": "2024-09-10T10:31:20-07:00",
"endpointConfiguration": {
  "types": [
    "PRIVATE"
   ],
  "ipAddressType": "dualstack"
  },
"domainNameStatus": "AVAILABLE",
"securityPolicy": "TLS_1_2",
"policy": "...",
"routingMode" : "ROUTING_RULE_THEN_BASE_PATH_MAPPING"
}
```

------