Exemplos de como o API Gateway avalia regras de roteamento
A seção a seguir mostra quatro exemplos de como o API Gateway avalia regras de roteamento e mapeamentos de API.
Exemplo 1: somente regras de roteamento
Neste exemplo, o nome de domínio personalizado https://petstore.example.com tem o modo de roteamento definido como ROUTING_RULE_ONLY e as regras e prioridades de roteamento a seguir.
| ID da regra | Prioridade | Condições | Ação | 
|---|---|---|---|
| 
 | 10 |  Se a solicitação contiver cabeçalho:  | API de destino 1 | 
| 
 | 50 |  Se a solicitação contiver cabeçalhos  | API de destino 2 | 
| 
 | 100 | Nenhum | API de destino 3 | 
A tabela a seguir mostra como o API Gateway aplica as regras de roteamento anteriores a solicitações de exemplo.
| Solicitação | API selecionada | Explicação | 
|---|---|---|
| 
 | API de destino 1 | As solicitações correspondem à regra de roteamento  | 
| 
 | API de destino 1 | O API Gateway avalia todas as regras de roteamento em ordem de prioridade. A regra de roteamento  Embora as condições da solicitação também correspondam à regra de roteamento  | 
| 
 | API de destino 2 | As solicitações correspondem à regra de roteamento  | 
| 
 | API de destino 3 | A solicitação não corresponde à regra de roteamento  | 
Exemplo 2: regras de roteamento e mapeamentos de API
Neste exemplo, o nome de domínio personalizado https://petstore.diagram.example.com tem o modo de roteamento definido como ROUTING_RULE_THEN_API_MAPPING e as regras de roteamento e mapeamentos de API a seguir.
| ID da regra | Prioridade | Condições | Ação | 
|---|---|---|---|
| 
 | 1 |  Se a solicitação contiver  |  Invoque o estágio  | 
| 
 | 5 |  Se a solicitação contiver cabeçalhos  |  Invoque o estágio  | 
A tabela a seguir mostra mapeamentos de API para https://petstore.backup.example.com.
| Mapeamento de API | API selecionada | 
|---|---|
| 
                    |  Invoque o estágio  | 
| 
                    |  Invoque o estágio  | 
O diagrama a seguir mostra como o API Gateway aplica as regras de roteamento e os mapeamentos de API anteriores a solicitações de exemplo. As solicitações de exemplo estão resumidas na tabela após esse diagrama.
 
          
          
       A tabela a seguir mostra como o API Gateway aplica as regras de roteamento e os mapeamentos de API anteriores a solicitações de exemplo.
| Solicitação | API selecionada | Explicação | 
|---|---|---|
| 
 | O estágio  | A solicitação corresponde à regra de roteamento  | 
| 
 | O estágio  | A solicitação corresponde à regra de roteamento  | 
| 
 | O estágio  | A solicitação não tem os cabeçalhos necessários para fazer a correspondência com a regra de roteamento  | 
| 
 | O estágio  | A solicitação faz a correspondência entre o mapeamento de API e o caminho vazio  | 
Exemplo 3: regras de roteamento e mapeamentos de API com vários níveis
Neste exemplo, o nome de domínio personalizado https://petstore.backup.example.com tem o modo de roteamento definido como ROUTING_RULE_THEN_API_MAPPING e as regras de roteamento e mapeamentos de API a seguir.
A tabela a seguir mostra regras de roteamento para https://petstore.backup.example.com.
| ID da regra | Prioridade | Condições | Ação | 
|---|---|---|---|
| 
 | 10 |  Se a solicitação contiver cabeçalho:  | API de destino 1 | 
| 
 | 50 |  Se a solicitação contiver cabeçalhos  | API de destino 2 | 
A tabela a seguir mostra mapeamentos de API para https://petstore.backup.example.com.
| Mapeamento de API | API selecionada | 
|---|---|
| 
                   | API de destino 3 | 
| 
                   | API de destino 4 | 
A tabela a seguir mostra como o API Gateway aplica as regras de roteamento e os mapeamentos de API anteriores a solicitações de exemplo.
| Solicitação | API selecionada | Explicação | 
|---|---|---|
| 
 | API de destino 3 | A solicitação não tem os cabeçalhos necessários para fazer a correspondência com a regra de roteamento  | 
| 
 | API de destino 1 | A solicitação corresponde à regra de roteamento  | 
| 
 | Nenhum | A solicitação não corresponde a nenhuma regra de roteamento ou mapeamento de API. Como não há uma regra de roteamento padrão, o API Gateway rejeita a chamada e envia um código de status  | 
Exemplo 4: regras de roteamento para nomes de domínio curinga
Neste exemplo, o nome de domínio personalizado https://*.example.com é um nome de domínio curinga. O curinga aceita todos os subdomínios que são roteados de volta para o mesmo domínio. Os exemplos de regra de roteamento a seguir alteram esse comportamento para permitir que subdomínios sejam roteados para diferentes APIs de destino usando o cabeçalho Host.
A tabela a seguir mostra regras de roteamento para https://*.example.com.
| ID da regra | Prioridade | Condições | Ação | 
|---|---|---|---|
| 
 | 10 |  Se a solicitação contiver cabeçalho:  | API de destino 1 | 
| 
 | 50 |  Se a solicitação contiver cabeçalho:  | API de destino 2 | 
| 
 | 500 | Nenhum | API de destino 3 | 
A tabela a seguir mostra como o API Gateway aplica as regras de roteamento anteriores a solicitações de exemplo.
| Solicitação | API selecionada | Explicação | 
|---|---|---|
| 
 | API de destino 1 | O cabeçalho  | 
| 
 | API de destino 2 | O cabeçalho  | 
| 
 | API de destino 3 | Isso corresponde à regra de roteamento abrangente  |