- Visão geral de serviço
- Primeiros passos
-
Guia de usuário
- Visão geral
-
Gerenciamento de API
- Criação de um grupo de APIs
- Importação de uma carga de trabalho do CCE
- Vinculação de um nome de domínio
- Criação de uma variável de ambiente
- Criação de uma resposta de gateway
- Criação de uma API
- Criação de uma API de gRPC
- Clonagem de uma API
- CORS
- Depuração de uma API
- Autorização de acesso à API
- Publicação de uma API
- Colocar uma API off-line
-
Importação e exportação de APIs
- Restrições e compatibilidade
- Importação de APIs
- Exportação de APIs
-
Definição estendida
- x-apigateway-auth-type
- x-apigateway-request-type
- x-apigateway-match-mode
- x-apigateway-cors
- x-apigateway-is-send-fg-body-base64
- x-apigateway-any-method
- x-apigateway-backend
- x-apigateway-backend.parameters
- x-apigateway-backend.httpEndpoints
- x-apigateway-backend.httpVpcEndpoints
- x-apigateway-backend.functionEndpoints
- x-apigateway-backend.mockEndpoints
- x-apigateway-backend-policies
- x-apigateway-backend-policies.conditions
- x-apigateway-ratelimit
- x-apigateway-ratelimits
- x-apigateway-ratelimits.policy
- x-apigateway-ratelimits.policy.special
- x-apigateway-access-control
- x-apigateway-access-controls
- x-apigateway-access-controls.policy
- x-apigateway-plugins
- Visualização de APIs
- HTTP 2.0
-
Políticas da API
- Criar uma política e vinculá-la a APIs
- CORS
- Gerenciamento de cabeçalho de resposta HTTP
- Limitação de solicitação 2.0
- Push de log do Kafka
- Disjuntor
- Autorizador de terceiros
- Limitação de solicitação
- Controle de acesso
- Chaves de assinatura
- Autorizadores personalizados
- Certificados SSL
- Canais de balanceamento de carga
- Gerenciamento de ambientes
- Credenciais
- Monitoramento e análise
- Gerenciamento de gateway
- SDKs
- Chamada de API publicada
- Gerenciamento de permissões
-
Console antigo
- Visão geral
- Gerenciamento de gateway
- Abertura da API
- Chamada de API
- Gerenciamento de permissões
- Principais operações gravadas pelo CTS
-
Melhores práticas
- Exposição seletiva de cargas de trabalho do CCE com um gateway dedicado
- Exposição seletiva dos recursos de serviço de um data center usando um gateway dedicado
- Desenvolvimento de um autorizador personalizado com FunctionGraph
- Exposição de serviços de back-end entre VPCs usando um gateway dedicado
- Interconexão de um gateway dedicado com o WAF
- Limitação de solicitações 2.0 com um gateway dedicado
- Autenticação de dois fatores com um gateway dedicado
- Redirecionamento automático de HTTP para HTTPS com um gateway dedicado
- Roteamento de solicitações de serviço gRPC usando um gateway dedicado
- Autenticação de cliente com um gateway dedicado
-
Referência de API
- Antes de começar
- Visão geral de API
- Chamada das APIs
- Primeiros passos
-
APIs compartilhadas de gateway (para usuários existentes)
- Gerenciamento de grupos de API
-
Gerenciamento de API
- Modelo de objeto
- Registro de uma API
- Modificação de uma API
- Exclusão de uma API
- Publicação de uma API
- Colocar uma API off-line
- Publicação de várias APIs ou colocação de várias APIs off-line
- Consulta de detalhes da API
- Consulta de uma lista de APIs
- Consulta de versões históricas da API
- Colocação de uma versão efetiva de uma API off-line
- Consulta de detalhes de uma versão da API
- Consulta da definição de tempo de execução de uma API
- Depuração de uma API
-
Gerenciamento de aplicações
- Modelo de objeto
- Criação de uma aplicação
- Modificação de uma aplicação
- Redefinição de um AppSecret
- Exclusão de uma aplicação
- Verificação de uma aplicação
- Consulta de detalhes da aplicação
- Consulta de uma lista de aplicações
- Criação de um AppCode
- Geração de um AppCode
- Consulta de detalhes do AppCode
- Consulta de uma lista de AppCode
- Exclusão de um AppCode
- Gerenciamento de autorização de aplicações
- Gerenciamento de ambiente
- Gerenciamento de variáveis de ambiente
-
Gerenciamento de política de limitação de solicitação
- Modelo de objeto
- Criação de uma política de limitação de solicitações
- Modificação de uma política de limitação de solicitação
- Exclusão de uma política de limitação de solicitação
- Consulta de detalhes de uma política de limitação de solicitações
- Consulta da lista de políticas de limitação de solicitação
-
Políticas de limitação de solicitação de vinculação
- Modelo de objeto
- Consulta da lista de APIs não vinculadas a uma política de limitação de solicitações
- Vinculação de uma política de limitação de solicitação
- Consulta da lista de APIs vinculadas a uma política de limitação de solicitações
- Consulta da lista de políticas de limitação de solicitações vinculadas a uma API
- Desvinculação de uma política de limitação de solicitações
- Configuração de limitação de solicitação excluída
-
Gerenciamento de política de controle de acesso
- Modelo de objeto
- Criação de uma política de controle de acesso
- Modificação de uma política de controle de acesso
- Exclusão de uma política de controle de acesso
- Exclusão de várias políticas de controle de acesso
- Consulta de detalhes de uma política de controle de acesso
- Consulta da lista de políticas de controle de acesso
-
Vinculação de políticas de controle de acesso
- Modelo de objeto
- Vinculação de uma política de controle de acesso a uma API
- Consulta da lista de políticas de controle de acesso vinculadas a uma API
- Consulta da lista de APIs vinculadas a uma política de controle de acesso
- Consulta da lista de APIs não vinculadas a uma política de controle de acesso
- Desvinculação de uma política de controle de acesso de uma API
- Desvinculação de várias políticas de controle de acesso de APIs
- Consulta de informações de assinatura no marketplace
- Gerenciamento da configuração
- Consulta de recursos
- Gerenciamento de chaves de assinatura
- Vinculação de chaves de assinatura
- Gerenciamento de nome de domínio
-
Gerenciamento de canais da VPC
- Modelo de objeto
- Criação de um canal da VPC
- Atualização de um canal da VPC
- Exclusão de um canal da VPC
- Consulta de detalhes do canal da VPC
- Consulta da lista de canais da VPC
- Adição de instâncias de back-end (servidores em nuvem)
- Exclusão de uma instância de back-end (servidor em nuvem)
- Consulta da lista de instâncias de back-end (lista de servidores em nuvem)
- Consulta de métricas
- OpenAPI
- Gerenciamento de autorizador personalizado
-
APIs de gateway dedicadas (V2)
- Gerenciamento de grupos de APIs
- Gerenciamento de ambiente
- Gerenciamento de variáveis de ambiente
- Gerenciamento de política de limitação de solicitação
-
Gerenciamento de API
- Registração de uma API
- Modificação de uma API
- Exclusão de uma API
- Publicar uma API ou deixar uma API off-line
- Consulta de detalhes da API
- Consulta de APIs
- Depuração de uma API
- Publicar APIs ou deixar APIs off-line
- Consulta de versões históricas de uma API
- Alternação da versão de uma API
- Consulta da definição de tempo de execução de uma API
- Consulta de detalhes da versão de API
- Deixar uma versão da API off-line
- Gerenciamento de chaves de assinatura
- Vinculação/desvinculação de chaves de assinatura
-
Vinculação/desvinculação de políticas de limitação de solicitações
- Vinculação de uma política de limitação de solicitação
- Desvinculação de uma política de limitação de solicitação
- Consulta de APIs vinculadas a uma política de limitação de solicitações
- Consulta de APIs não vinculadas com uma política de limitação de solicitações
- Consulta de políticas de limitação de solicitação vinculadas a uma API
- Desvinculação de políticas de limitação de solicitação
- Configuração de limitação de solicitação excluída
- Gerenciamento de autorização de aplicações
- Consulta de recursos
-
Gerenciamento de aplicações
- Criação de uma aplicação
- Modificação de uma aplicação
- Exclusão de uma aplicação
- Redefinição do AppSecret de uma aplicação
- Verificação de uma aplicação
- Consulta de detalhes da aplicação
- Consulta de aplicação
- Criação de um AppCode
- Geração de um AppCode
- Exclusão de um AppCode
- Consulta de detalhes do AppCode
- Consulta de AppCodes de uma aplicação
- Gerenciamento de nome de domínio
- Gerenciamento de política de controle de acesso
-
Vinculação/desvinculação de políticas de controle de acesso
- Vinculação de uma política de controle de acesso a uma API
- Desvinculação de uma política de controle de acesso
- Desvinculação de políticas de controle de acesso
- Consulta de APIs vinculadas com uma política de controle de acesso
- Consulta de APIs não vinculadas a uma política de controle de acesso
- Consulta de políticas de controle de acesso vinculadas a uma API
- Gerenciamento de autorizador personalizado
- Importação e exportação de API
-
Gerenciamento de canais da VPC
- Criação de um canal da VPC
- Atualização de um canal da VPC
- Exclusão de um canal da VPC
- Consulta de detalhes do canal da VPC
- Consulta de canais da VPC
- Adição ou atualização de instâncias de back-end
- Consulta de servidores de back-end de um canal da VPC
- Atualização de instâncias de back-end
- Remoção de um servidor back-end
- Habilitação de servidores back-end
- Desativação de servidores back-end
- Modificação da verificação de integridade do canal da VPC
- Adição ou atualização de um grupo de servidores back-end de um canal da VPC
- Consulta de grupos de servidores back-end de um canal da VPC
- Consulta de um grupo de servidores back-end de um canal da VPC
- Exclusão de um grupo de servidores back-end de um canal da VPC
- Atualização de um grupo de servidores back-end de um canal da VPC
- Monitoramento de consultas de informação
- Gerenciamento de resposta de grupo
- Gerenciamento de tags
- Gerenciamento de recursos de gateway
- Gerenciamento da configuração
-
Gerenciamento de gateway
- Criação de um gateway dedicado
- Consulta de detalhes do gateway dedicado
- Atualização de um gateway dedicado
- Consulta do progresso de criação de um gateway dedicado
- Atualização ou vinculação de um EIP a um gateway dedicado
- Desvinculação do EIP de um gateway dedicado
- Habilitação do acesso público para um gateway dedicado
- Atualização da largura de banda de acesso de saída de um gateway dedicado
- Desabilitação do acesso público para um gateway dedicado
- Consulta de AZs
- Consulta de gateways dedicados
- Exclusão de um gateway dedicado
- Políticas de permissões e ações suportadas
- Apêndice
- História de mudanças
-
Perguntas frequentes
- Perguntas frequentes comuns
-
Criação de API
- Por que não consigo criar APIs?
- Como definir códigos de resposta para uma API?
- Como especificar a porta do host para um canal de VPC (ou canal de balanceamento de carga)?
- Como definir o endereço de back-end se não for usar um canal de VPC (ou um canal de balanceamento de carga)?
- Como configurar o endereço do serviço de back-end?
- Posso especificar um endereço de balanceador de carga de rede privada para o serviço de back-end?
- Posso especificar o endereço de back-end como um endereço IP de sub-rede?
- O APIG oferece suporte a vários pontos de extremidade de back-end?
- O que devo fazer depois de solicitar um nome de domínio independente?
- Posso vincular nomes de domínio privados para acesso à API?
- Por que uma API não pode ser chamada entre domínios?
-
Chamada de API
- Quais são as possíveis causas para uma falha de chamada de API?
- O que devo fazer se um código de erro for retornado durante a chamada da API?
- Por que estou vendo a mensagem de erro "414 Request-URI Too Large" quando chamo uma API?
- O que devo fazer se a mensagem "The API does not exist or has not been published in the environment." é exibida?
- Por que estou vendo a mensagem "No backend available"?
- Quais são as possíveis causas se a mensagem "Backend unavailable" ou "Backend timeout" for exibida?
- Por que estou vendo a mensagem "Backend domain name resolution failed" quando um serviço de back-end é chamado?
- Por que a modificação do parâmetro backend_timeout não tem efeito?
- Como alternar o ambiente para chamada de API?
- Qual é o tamanho máximo de um pacote de solicitação de API?
- Como executar a autenticação de aplicações no sistema iOS?
- Por que não posso criar um parâmetro de cabeçalho chamado x-auth-token para uma API chamada por meio da autenticação do IAM?
- Perguntas frequentes sobre credencial
- Aplicações de móveis podem chamar APIs?
- As aplicações implementadas em uma VPC podem chamar APIs?
- Como implementar a transmissão de dados de WebSocket?
- O APIG oferece suporte a conexões persistentes?
- Como as solicitações para uma API com várias políticas de back-end serão correspondidas e executadas?
- Existe um limite no tamanho da resposta a uma solicitação de API?
- Como acessar serviços de back-end em redes públicas através do APIG?
-
Autenticação da API
- O APIG oferece suporte à autenticação bidirecional HTTPS?
- Como chamar uma API que não requer autenticação?
- Quais versões de TLS o APIG suporta?
- O APIG suporta autenticação personalizada?
- O corpo de solicitação será assinado para autenticação de segurança?
- Erros comuns relacionados às informações de autenticação do IAM
- Políticas de controle da API
- Publicação de API
- Importação e exportação de API
- Segurança da API
-
Outras perguntas frequentes
- Quais são as relações entre uma API, um ambiente e uma credencial?
- Como usar o APIG?
- Quais linguagens de SDK o APIG suporta?
- Posso fazer upload de arquivos usando o método POST?
- Como são as mensagens de erro retornadas pelo APIG?
- Como usar o APIG para abrir os serviços implementados na Huawei Cloud?
- Posso atualizar o gateway compartilhado para um gateway dedicado?
- Por que todos os botões no console do APIG estão indisponíveis?
- O APIG pode ser implementado em um data center local?
- No momento, o conteúdo não está disponível no seu idioma selecionado. Consulte a versão em inglês.
- What's New
- Function Overview
- Product Bulletin
- Billing
- Developer Guide
- SDK Reference
- Videos
-
More Documents
-
User Guide (Kuala Lumpur Region)
- Service Overview
- Getting Started
- Comparing Versions
- Overview
-
API Management
- Creating an API Group
- Binding a Domain Name
- Creating an Environment Variable
- Creating a Gateway Response
- Creating an API
- Cloning an API
- CORS
- Debugging an API
- Authorizing API Access
- Publishing an API
- Taking an API Offline
-
Importing and Exorting APIs
- Restrictions and Compatibility
- Importing APIs
- Exporting APIs
-
Extended Definition
- x-apigateway-auth-type
- x-apigateway-request-type
- x-apigateway-match-mode
- x-apigateway-cors
- x-apigateway-any-method
- x-apigateway-backend
- x-apigateway-backend.parameters
- x-apigateway-backend.httpEndpoints
- x-apigateway-backend.httpVpcEndpoints
- x-apigateway-backend.functionEndpoints
- x-apigateway-backend.mockEndpoints
- x-apigateway-backend-policies
- x-apigateway-backend-policies.conditions
- x-apigateway-ratelimit
- x-apigateway-ratelimits
- x-apigateway-ratelimits.policy
- x-apigateway-ratelimits.policy.special
- x-apigateway-access-control
- x-apigateway-access-controls
- x-apigateway-access-controls.policy
- x-apigateway-plugins
- Viewing APIs
- HTTP 2.0
- API Policies
- Credentials
- Monitoring & Analysis
- Gateway Management
- SDKs
- Published API Calling
- Permissions Management
- Auditing
-
FAQs
- Common FAQs
-
API Creation
- How Do I Define Response Codes for an API?
- How Do I Specify the Host Port for a VPC Channel (or Load Balance Channel)?
- How Do I Set the Backend Address If I Will Not Use a VPC Channel (or Load Balance Channel)?
- How Can I Configure the Backend Service Address?
- Can I Specify a Private Network Load Balancer Address for the Backend Service?
- Can I Specify the Backend Address as a Subnet IP Address?
- Does APIG Support Multiple Backend Endpoints?
- What Should I Do After Applying for an Independent Domain Name?
- Can I Bind Private Domain Names for API Access?
- Why Does an API Failed to Be Called Across Domains?
-
API Calling
- What Are the Possible Causes for an API Calling Failure?
- What Should I Do If an Error Code Is Returned During API Calling?
- Why Am I Seeing the Error Message "414 Request URI too large" When I Call an API?
- What Should I Do If "The API does not exist or has not been published in the environment." Is Displayed?
- Why Am I Seeing the Message "No backend available"?
- What Are the Possible Causes If the Message "Backend unavailable" or "Backend timeout" Is Displayed?
- Why Am I Seeing the Message "Backend domain name resolution failed" When a Backend Service Is Called?
- Why Doesn't Modification of the backend_timeout Parameter Take Effect?
- How Do I Switch the Environment for API Calling?
- What Is the Maximum Size of an API Request Package?
- How Do I Perform App Authentication in iOS System?
- Why Can't I Create a Header Parameter Named x-auth-token for an API Called Through IAM Authentication?
- App (Credential) FAQs
- Can Mobile Apps Call APIs?
- Can Applications Deployed in a VPC Call APIs?
- Does APIG Support WebSocket Data Transmission?
- Does APIG Support Persistent Connections?
- How Will the Requests for an API with Multiple Backend Policies Be Matched and Executed?
- Is There a Limit on the Size of the Response to an API Request?
- How Can I Access Backend Services over Public Networks Through APIG?
-
API Authentication
- Does APIG Support HTTPS Two-Way Authentication?
- How Do I Call an API That Does Not Require Authentication?
- Which TLS Versions Does APIG Support?
- Does APIG Support Custom Authentication?
- Will the Request Body Be Signed for Security Authentication?
- Common Errors Related to IAM Authentication Information
- What Should I Do If the App Authentication Information Is Incorrect?
- API Control Policies
- API Publishing
- API Import and Export
- API Security
- Other FAQs
- Change History
- Developer Guide (Kuala Lumpur Region)
-
API Reference (Kuala Lumpur Region)
- Before You Start
- Calling APIs
-
Dedicated Gateway APIs (V2)
- API Group Management
- Environment Management
- Environment Variable Management
- Request Throttling Policy Management
-
API Management
- Creating an API
- Modifying an API
- Deleting an API
- Publishing an API or Taking an API Offline
- Querying API Details
- Querying APIs
- Verifying the API Definition
- Debugging an API
- Publishing APIs or Taking APIs Offline
- Querying Historical Versions of an API
- Switching the Version of an API
- Querying the Runtime Definition of an API
- Querying API Version Details
- Taking an API Version Offline
- Signature Key Management
- Binding/Unbinding Signature Keys
- Binding/Unbinding Request Throttling Policies
- Excluded Request Throttling Configuration
- App Authorization Management
- Resource Query
- Domain Name Management
- Access Control Policy Management
- Binding/Unbinding Access Control Policies
- Custom Authorizer Management
- API Import and Export
-
VPC Channel Management
- Creating a VPC Channel
- Updating a VPC Channel
- Deleting a VPC Channel
- Querying VPC Channel Details
- Querying VPC Channels
- Adding or Updating Backend Instances
- Querying Backend Servers of a VPC Channel
- Updating Backend Instances
- Removing a Backend Server
- Enabling Backend Servers
- Disabling Backend Servers
- Modifying VPC Channel Health Check
- Adding or Updating a Backend Server Group of a VPC Channel
- Querying Backend Server Groups of a VPC Channel
- Querying a Backend Server Group of a VPC Channel
- Deleting a Backend Server Group of a VPC Channel
- Updating a Backend Server Group of a VPC Channel
- Monitoring Information Query
- Group Response Management
- Tag Management
- Gateway Feature Management
- Configuration Management
-
Gateway Management
- Creating a Dedicated Gateway (Pay-Per-Use)
- Querying Dedicated Gateway Details
- Updating a Dedicated Gateway
- Querying the Creation Progress of a Dedicated Gateway
- Updating or Binding an EIP to a Dedicated Gateway
- Unbinding the EIP of a Dedicated Gateway
- Enabling Public Access for a Dedicated Gateway
- Updating the Outbound Access Bandwidth of a Dedicated Gateway
- Disabling Public Access for a Dedicated Gateway
- Enabling Public Inbound Access
- Updating Public Inbound Access Bandwidth of a Gateway
- Disabling Public Inbound Access for a Gateway
- Querying AZs
- Querying Dedicated Gateways
- Deleting a Dedicated Gateway
- Modifying the Specifications of a Pay-Per-Use Gateway
- Querying Gateway Constraints
- VPC Endpoint Management
- Gateway Tag Management
-
SSL Certificate Management
- Querying SSL Certificates
- Creating an SSL Certificate
- Binding a Domain Name with SSL Certificates
- Unbinding a Domain Name's SSL Certificates
- Querying Certificate Details
- Deleting an SSL Certificate
- Modifying an SSL Certificate
- Binding an SSL Certificate to a Domain Name
- Unbinding an SSL Certificate from a Domain Name
- Querying Domain Names of an SSL Certificate
-
Plug-in Management
- Creating a Plug-in
- Modifying a Plug-in
- Deleting a Plug-in
- Querying Plug-ins
- Querying Plug-in Details
- Binding a Plug-in to APIs
- Binding an API with Plug-ins
- Unbinding a Plug-in from All APIs
- Unbinding an API's Plug-ins
- Querying APIs Bound with a Plug-in
- Querying Plug-ins Bound to an API
- Querying APIs to Which a Plug-in Can Be Bound
- Querying Plug-ins That Can Be Bound to an API
-
Credential Management
- Creating an App
- Modifying an App
- Deleting an App
- Resetting the AppSecret of an App
- Verifying an App
- Querying App Details
- Querying Apps
- Creating an AppCode
- Generating an AppCode
- Deleting an AppCode
- Querying AppCode Details
- Querying AppCodes of an App
- Querying Quotas Associated with a Credential
- Configuring Access Control Settings for an App
- Querying Access Control Details About an App
- Deleting Access Control Settings of an App
-
Credential Quota Management
- Creating a Credential Quota
- Querying Credential Quota Details
- Querying Credential Quotas
- Modifying a Credential Quota
- Deleting a Credential Quota
- Querying the Credentials Bound to a Specified Quota
- Binding a Credential Quota with Credentials
- Unbinding a Credential Quota from a Credential
- Querying Credentials That Can Be Bound to a Credential Quota
- Asynchronous Task Management
- Permissions Policies and Supported Actions
- Appendix
- Change History
-
User Guide (ME-Abu Dhabi Region)
- Service Overview
- Getting Started
- Comparing Versions
- Overview
-
API Management
- Creating an API Group
- Importing a CCE Workload
- Binding a Domain Name
- Creating an Environment Variable
- Creating a Gateway Response
- Creating an API
- Creating a gRPC API
- Cloning an API
- CORS
- Debugging an API
- Authorizing API Access
- Publishing an API
- Taking an API Offline
-
Importing and Exorting APIs
- Restrictions and Compatibility
- Importing APIs
- Exporting APIs
-
Extended Definition
- x-apigateway-auth-type
- x-apigateway-request-type
- x-apigateway-match-mode
- x-apigateway-cors
- x-apigateway-is-send-fg-body-base64
- x-apigateway-any-method
- x-apigateway-backend
- x-apigateway-backend.parameters
- x-apigateway-backend.httpEndpoints
- x-apigateway-backend.httpVpcEndpoints
- x-apigateway-backend.functionEndpoints
- x-apigateway-backend.mockEndpoints
- x-apigateway-backend-policies
- x-apigateway-backend-policies.conditions
- x-apigateway-ratelimit
- x-apigateway-ratelimits
- x-apigateway-ratelimits.policy
- x-apigateway-ratelimits.policy.special
- x-apigateway-access-control
- x-apigateway-access-controls
- x-apigateway-access-controls.policy
- x-apigateway-plugins
- Viewing APIs
- HTTP 2.0
- API Policies
- Credentials
- Monitoring & Analysis
- Gateway Management
- SDKs
- Published API Calling
- Permissions Management
- Auditing
-
FAQs
- Common FAQs
-
API Creation
- Why Can't I Create APIs?
- How Do I Define Response Codes for an API?
- How Do I Specify the Host Port for a VPC Channel (or Load Balance Channel)?
- How Do I Set the Backend Address If I Will Not Use a VPC Channel (or Load Balance Channel)?
- How Can I Configure the Backend Service Address?
- Can I Specify a Private Network Load Balancer Address for the Backend Service?
- Can I Specify the Backend Address as a Subnet IP Address?
- Does APIG Support Multiple Backend Endpoints?
- What Should I Do After Applying for an Independent Domain Name?
- Can I Bind Private Domain Names for API Access?
- Why Does an API Failed to Be Called Across Domains?
-
API Calling
- What Are the Possible Causes for an API Calling Failure?
- What Should I Do If an Error Code Is Returned During API Calling?
- Why Am I Seeing the Error Message "414 Request URI too large" When I Call an API?
- What Should I Do If "The API does not exist or has not been published in the environment." Is Displayed?
- Why Am I Seeing the Message "No backend available"?
- What Are the Possible Causes If the Message "Backend unavailable" or "Backend timeout" Is Displayed?
- Why Am I Seeing the Message "Backend domain name resolution failed" When a Backend Service Is Called?
- Why Doesn't Modification of the backend_timeout Parameter Take Effect?
- How Do I Switch the Environment for API Calling?
- What Is the Maximum Size of an API Request Package?
- How Do I Perform App Authentication in iOS System?
- Why Can't I Create a Header Parameter Named x-auth-token for an API Called Through IAM Authentication?
- App (Credential) FAQs
- Can Mobile Apps Call APIs?
- Can Applications Deployed in a VPC Call APIs?
- Does APIG Support WebSocket Data Transmission?
- Does APIG Support Persistent Connections?
- How Will the Requests for an API with Multiple Backend Policies Be Matched and Executed?
- Is There a Limit on the Size of the Response to an API Request?
- How Can I Access Backend Services over Public Networks Through APIG?
-
API Authentication
- Does APIG Support HTTPS Two-Way Authentication?
- How Do I Call an API That Does Not Require Authentication?
- Which TLS Versions Does APIG Support?
- Does APIG Support Custom Authentication?
- Will the Request Body Be Signed for Security Authentication?
- Common Errors Related to IAM Authentication Information
- What Should I Do If the App Authentication Information Is Incorrect?
- API Control Policies
- API Publishing
- API Import and Export
- API Security
- Other FAQs
- Change History
- Developer Guide (ME-Abu Dhabi Region)
-
API Reference (ME-Abu Dhabi Region)
- Before You Start
- Calling APIs
-
Dedicated Gateway APIs (V2)
- API Group Management
- Environment Management
- Environment Variable Management
- Request Throttling Policy Management
-
API Management
- Creating an API
- Modifying an API
- Deleting an API
- Publishing an API or Taking an API Offline
- Querying API Details
- Querying APIs
- Verifying the API Definition
- Debugging an API
- Publishing APIs or Taking APIs Offline
- Querying Historical Versions of an API
- Switching the Version of an API
- Querying the Runtime Definition of an API
- Querying API Version Details
- Taking an API Version Offline
- Signature Key Management
- Binding/Unbinding Signature Keys
- Binding/Unbinding Request Throttling Policies
- Excluded Request Throttling Configuration
- App Authorization Management
- Resource Query
- Domain Name Management
- Access Control Policy Management
- Binding/Unbinding Access Control Policies
- Custom Authorizer Management
- API Import and Export
-
VPC Channel Management
- Creating a VPC Channel
- Updating a VPC Channel
- Deleting a VPC Channel
- Querying VPC Channel Details
- Querying VPC Channels
- Adding or Updating Backend Instances
- Querying Backend Servers of a VPC Channel
- Updating Backend Instances
- Removing a Backend Server
- Enabling Backend Servers
- Disabling Backend Servers
- Modifying VPC Channel Health Check
- Adding or Updating a Backend Server Group of a VPC Channel
- Querying Backend Server Groups of a VPC Channel
- Querying a Backend Server Group of a VPC Channel
- Deleting a Backend Server Group of a VPC Channel
- Updating a Backend Server Group of a VPC Channel
- Monitoring Information Query
- Group Response Management
- Tag Management
- Gateway Feature Management
- Configuration Management
-
Gateway Management
- Creating a Dedicated Gateway (Pay-Per-Use)
- Querying Dedicated Gateway Details
- Updating a Dedicated Gateway
- Querying the Creation Progress of a Dedicated Gateway
- Updating or Binding an EIP to a Dedicated Gateway
- Unbinding the EIP of a Dedicated Gateway
- Enabling Public Access for a Dedicated Gateway
- Updating the Outbound Access Bandwidth of a Dedicated Gateway
- Disabling Public Access for a Dedicated Gateway
- Enabling Public Inbound Access
- Updating Public Inbound Access Bandwidth of a Gateway
- Disabling Public Inbound Access for a Gateway
- Querying AZs
- Querying Dedicated Gateways
- Deleting a Dedicated Gateway
- Modifying the Specifications of a Pay-Per-Use Gateway
- Querying Gateway Constraints
- VPC Endpoint Management
- Gateway Tag Management
- Microservice Center Management
-
SSL Certificate Management
- Querying SSL Certificates
- Creating an SSL Certificate
- Binding a Domain Name with SSL Certificates
- Unbinding a Domain Name's SSL Certificates
- Querying Certificate Details
- Deleting an SSL Certificate
- Modifying an SSL Certificate
- Binding an SSL Certificate to a Domain Name
- Unbinding an SSL Certificate from a Domain Name
- Querying Domain Names of an SSL Certificate
-
Plug-in Management
- Creating a Plug-in
- Modifying a Plug-in
- Deleting a Plug-in
- Querying Plug-ins
- Querying Plug-in Details
- Binding a Plug-in to APIs
- Binding an API with Plug-ins
- Unbinding a Plug-in from All APIs
- Unbinding an API's Plug-ins
- Querying APIs Bound with a Plug-in
- Querying Plug-ins Bound to an API
- Querying APIs to Which a Plug-in Can Be Bound
- Querying Plug-ins That Can Be Bound to an API
-
Credential Management
- Creating an App
- Modifying an App
- Deleting an App
- Resetting the AppSecret of an App
- Verifying an App
- Querying App Details
- Querying Apps
- Creating an AppCode
- Generating an AppCode
- Deleting an AppCode
- Querying AppCode Details
- Querying AppCodes of an App
- Querying Quotas Associated with a Credential
- Configuring Access Control Settings for an App
- Querying Access Control Details About an App
- Deleting Access Control Settings of an App
-
Credential Quota Management
- This API is used to creat a credential quota.
- Querying Credential Quota Details
- Querying Credential Quotas
- Modifying a Credential Quota
- Deleting a Credential Quota
- Querying the Credentials Bound to a Specified Quota
- Binding a Credential Quota with Credentials
- Unbinding a Credential Quota from a Credential
- Querying Credentials That Can Be Bound to a Credential Quota
- Asynchronous Task Management
- Permissions Policies and Supported Actions
- Appendix
- Change History
-
Best Practices (ME-Abu Dhabi Region)
- Selectively Exposing CCE Workloads with a Dedicated Gateway
- Selectively Exposing Service Capabilities of a Data Center Using a Dedicated Gateway
- Developing a Custom Authorizer with FunctionGraph
- Exposing Backend Services Across VPCs Using a Dedicated Gateway
- Interconnecting a Dedicated Gateway with WAF
- Request Throttling 2.0 with a Dedicated Gateway
- Two-Factor Authentication with a Dedicated Gateway
- HTTP-to-HTTPS Auto Redirection with a Dedicated Gateway
- Client Authentication with a Dedicated Gateway
- Invoking an API Policy Backend via Frontend Authentication Parameters (System Parameter)
- Forwarding WebSocket Services Using Dedicated Gateway
- Change History
- User Guide (Paris Region)
-
Developer Guide (Paris Region)
- Application Scenarios
- Calling APIs Through App Authentication
- Calling APIs Through IAM Authentication
- Creating Signatures for Backend Requests
-
Importing and Exporting APIs
- Restrictions and Compatibility
- Extended Definition
- API Import Precautions
- Examples of Importing APIs
- API Export Precautions
- Change History
-
API Reference (Paris Region)
- Before You Start
- Calling APIs
- Getting Started
-
Shared Gateway APIs
- API Group Management
-
API Management
- Object Model
- Registering an API
- Modifying an API
- Deleting an API
- Publishing an API
- Taking an API Offline
- Publishing Multiple APIs or Taking Multiple APIs Offline
- Querying API Details
- Querying an API List
- Querying Historical API Versions
- Taking an Effective Version of an API Offline
- Querying Details of an API Version
- Querying the Runtime Definition of an API
- Debugging an API
- App Management
- App Authorization Management
- Environment Management
- Environment Variable Management
- Request Throttling Policy Management
- Binding Request Throttling Policies
- Excluded Request Throttling Configuration
- Access Control Policy Management
-
Binding Access Control Policies
- Object Model
- Binding an Access Control Policy to an API
- Querying the List of Access Control Policies Bound to an API
- Querying the List of APIs Bound to an Access Control Policy
- Querying the List of APIs Not Bound to an Access Control Policy
- Unbinding an Access Control Policy from an API
- Unbinding Multiple Access Control Policies from APIs
- Querying Subscription Information in the Marketplace
- Resource Query
- Signature Key Management
- Binding Signature Keys
- Domain Name Management
- VPC Channel Management
- OpenAPI
- Custom Authorizer Management
- Appendix
- Change History
-
Dedicated API Gateway User Guide (Paris Region)
- Service Overview
- Getting Started
- Comparing Versions
- Overview
-
API Management
- Creating an API Group
- Binding a Domain Name
- Creating an Environment Variable
- Creating a Gateway Response
- Creating an API
- CORS
- Debugging an API
- Authorizing API Access
- Publishing an API
- Taking an API Offline
-
Importing and Exorting APIs
- Restrictions and Compatibility
- Importing APIs
- Exporting APIs
-
Extended Definition
- x-apigateway-auth-type
- x-apigateway-request-type
- x-apigateway-match-mode
- x-apigateway-cors
- x-apigateway-any-method
- x-apigateway-backend
- x-apigateway-backend.parameters
- x-apigateway-backend.httpEndpoints
- x-apigateway-backend.httpVpcEndpoints
- x-apigateway-backend.functionEndpoints
- x-apigateway-backend.mockEndpoints
- x-apigateway-backend-policies
- x-apigateway-backend-policies.conditions
- x-apigateway-ratelimit
- x-apigateway-ratelimits
- x-apigateway-ratelimits.policy
- x-apigateway-ratelimits.policy.special
- x-apigateway-access-control
- x-apigateway-access-controls
- x-apigateway-access-controls.policy
- x-apigateway-plugins
- Viewing APIs
- API Policies
- Credentials
- Monitoring & Analysis
- Gateway Management
- Published API Calling
- Permissions Management
- Auditing
-
FAQs
- Common FAQs
-
API Creation
- How Do I Define Response Codes for an API?
- How Do I Specify the Host Port for a VPC Channel (or Load Balance Channel)?
- How Do I Set the Backend Address If I Will Not Use a VPC Channel (or Load Balance Channel)?
- How Can I Configure the Backend Service Address?
- Can I Specify a Private Network Load Balancer Address for the Backend Service?
- Can I Specify the Backend Address as a Subnet IP Address?
- Does APIG Support Multiple Backend Endpoints?
- What Should I Do After Applying for an Independent Domain Name?
- Can I Bind Private Domain Names for API Access?
- Why Does an API Failed to Be Called Across Domains?
-
API Calling
- What Are the Possible Causes for an API Calling Failure?
- What Should I Do If an Error Code Is Returned During API Calling?
- Why Am I Seeing the Error Message "414 Request URI too large" When I Call an API?
- What Should I Do If "The API does not exist or has not been published in the environment." Is Displayed?
- Why Am I Seeing the Message "No backend available"?
- What Are the Possible Causes If the Message "Backend unavailable" or "Backend timeout" Is Displayed?
- Why Am I Seeing the Message "Backend domain name resolution failed" When a Backend Service Is Called?
- Why Doesn't Modification of the backend_timeout Parameter Take Effect?
- How Do I Switch the Environment for API Calling?
- What Is the Maximum Size of an API Request Package?
- How Do I Perform App Authentication in iOS System?
- Why Can't I Create a Header Parameter Named x-auth-token for an API Called Through IAM Authentication?
- App (Credential) FAQs
- Can Mobile Apps Call APIs?
- Can Applications Deployed in a VPC Call APIs?
- Does APIG Support WebSocket Data Transmission?
- Does APIG Support Persistent Connections?
- How Will the Requests for an API with Multiple Backend Policies Be Matched and Executed?
- Is There a Limit on the Size of the Response to an API Request?
- How Can I Access Backend Services over Public Networks Through APIG?
-
API Authentication
- Does APIG Support HTTPS Two-Way Authentication?
- How Do I Call an API That Does Not Require Authentication?
- Which TLS Versions Does APIG Support?
- Does APIG Support Custom Authentication?
- Will the Request Body Be Signed for Security Authentication?
- Common Errors Related to IAM Authentication Information
- API Control Policies
- API Publishing
- API Import and Export
- API Security
- Other FAQs
- Change History
- Dedicated API Gateway Developer Guide (Paris Region)
-
Dedicated API Gateway API Reference (Paris Region)
- Before You Start
- Calling APIs
-
Dedicated Gateway APIs (V2)
- API Group Management
- Environment Management
- Environment Variable Management
- Request Throttling Policy Management
-
API Management
- Creating an API
- Modifying an API
- Deleting an API
- Publishing an API or Taking an API Offline
- Querying API Details
- Querying APIs
- Debugging an API
- Publishing APIs or Taking APIs Offline
- Querying Historical Versions of an API
- Switching the Version of an API
- Querying the Runtime Definition of an API
- Querying API Version Details
- Taking an API Version Offline
- Signature Key Management
- Binding/Unbinding Signature Keys
- Binding/Unbinding Request Throttling Policies
- Excluded Request Throttling Configuration
- App Authorization Management
- Resource Query
- App Management
- Domain Name Management
- Access Control Policy Management
- Binding/Unbinding Access Control Policies
- Custom Authorizer Management
- API Import and Export
- VPC Channel Management
- Monitoring Information Query
- Group Response Management
- Tag Management
- Gateway Feature Management
- Configuration Management
-
Gateway Management
- Creating a Dedicated Gateway (Pay-Per-Use)
- Querying Dedicated Gateway Details
- Updating a Dedicated Gateway
- Querying the Creation Progress of a Dedicated Gateway
- Updating or Binding an EIP to a Dedicated Gateway
- Unbinding the EIP of a Dedicated Gateway
- Enabling Public Access for a Dedicated Gateway
- Updating the Outbound Access Bandwidth of a Dedicated Gateway
- Disabling Public Access for a Dedicated Gateway
- Querying AZs
- Querying Dedicated Gateways
- Deleting a Dedicated Gateway
- Permissions Policies and Supported Actions
- Appendix
- Change History
-
User Guide (Kuala Lumpur Region)
Copiado.
Procedimento de implementação
Preparação de uma carga de trabalho do CCE
- Compre um cluster.
- Faça logon no console do CCE e compre um cluster do CCE (modelo de rede da VPC) ou um cluster Turbo na página Clusters. Selecione CCE Cluster e defina Network Model como VPC network. Para obter detalhes, consulte Compra de um cluster do CCE.
- Depois que o cluster é criado, registre o bloco CIDR do container.
- Adicione este bloco CIDR na área Routes de um gateway dedicado.
- Faça logon no console do APIG e escolha Gateways no painel de navegação.
- Clique no nome do gateway para acessar a página de detalhes.
- Adicione o bloco CIDR do container na área Routes.
- Crie uma carga de trabalho.
- Na página Clusters do console do CCE, clique no nome do cluster para acessar a página de detalhes.
- No painel de navegação, escolha Workloads.
- Clique em Create Workload. Defina Workload Type como Deployment. Para obter detalhes, consulte o Guia de usuário do CCE.
Na área Advanced Settings > Labels and Annotations, defina rótulos de pod para alternar a carga de trabalho e a versão de serviço. Neste exemplo, defina app=deployment-demo e version=v1. Se você criar uma carga de trabalho importando um arquivo YAML, adicione rótulos de pod nesse arquivo. Para obter detalhes sobre os rótulos do pod, consulte Rótulos e anotações de pods
Adicione rótulos de pod em um arquivo YAML:
spec: replicas: 2 selector: matchLabels: app: deployment-demo version: v1 template: metadata: creationTimestamp: null labels: app: deployment-demo version: v1
Método 1: abrir uma carga de trabalho do CCE criando um canal de balanceamento de carga
- Crie um canal de balanceamento de carga.
- Vá para o console do APIG e escolha Gateways no painel de navegação.
- Escolha API Management > API Policies.
- Na guia Load Balance Channels, clique em Create Load Balance Channel.
- Defina as informações básicas.
Tabela 1 Parâmetros de informações básicas Parâmetro
Descrição
Name
Insira um nome que esteja em conformidade com regras específicas para facilitar a pesquisa. Neste exemplo, insira VPC_demo.
Port
Porta de container de uma carga de trabalho para serviços de abertura. Defina esse parâmetro como 80, que é a porta HTTP padrão.
Routing Algorithm
Selecione WRR. Esse algoritmo será usado para encaminhar solicitações para cada um dos servidores de nuvem que você selecionar na ordem de peso do servidor.
Type
Selecione Microservice.
- Configure informações de microsserviços.
Tabela 2 Configuração de microsserviços Parâmetro
Descrição
Microservice Type
O Cloud Container Engine (CCE) é sempre selecionado.
Cluster
Selecione o cluster comprado.
Namespace
Selecione um namespace no cluster. Neste exemplo, selecione default.
Workload Type
Selecione Deployment. Este parâmetro deve ser o mesmo que o tipo da carga de trabalho criada.
Service Label Key
Selecione o rótulo do pod app e seu valor deployment-demo da carga de trabalho criada.
Service Label Value
- Configure um grupo de servidores.
Tabela 3 Configuração do grupo de servidores Parâmetro
Descrição
Server Group Name
Digite server_group_v1.
Weight
Digite 1.
Backend Service Port
Digite 80. Isso deve ser o mesmo que a porta do container na carga de trabalho.
Description
Digite "Server group with version v1".
Tag
Selecione o rótulo do pod version=v1 da carga de trabalho criada.
- Configure verificação de integridade.
Tabela 4 Configuração de verificação de integridade Parâmetro
Descrição
Protocol
Padrão: TCP.
Check Port
Porta do servidor back-end no canal.
Healthy threshold
Padrão: 2. Este é o número de verificações consecutivas bem-sucedidas necessárias para que um servidor em nuvem seja considerado íntegro.
Unhealthy Threshold
Padrão: 5. Esse é o número de verificações consecutivas com falha necessárias para que um servidor em nuvem seja considerado não íntegro.
Timeout (s)
Padrão: 5. Este é o tempo limite usado para determinar se uma verificação de integridade falhou.
Interval (s)
Padrão: 10. Este é o intervalo entre verificações consecutivas.
- Clique em Finish.
Na lista de canais de balanceamento de carga, clique em um nome de canal para exibir os detalhes.
- Defina as informações básicas.
- Abra uma API.
- Crie um grupo de APIs.
- Escolha API Management > API Groups.
- Clique em Create API Group e escolha Create Directly.
- Configure as informações do grupo e clique em OK.
- Crie uma API e vincule o canal de balanceamento de carga anterior a ela.
- Clique no nome do grupo para acessar a página de detalhes. Na guia APIs, clique em Create.
- Configure as informações de front-end e clique em Next.
Tabela 5 Configuração de front-end Parâmetro
Descrição
API Name
Insira um nome que esteja em conformidade com regras específicas para facilitar a pesquisa.
Group
Selecione o grupo de APIs anterior.
URL
Method: método de solicitação da API. Defina este parâmetro como ANY.
Protocol: protocolo de solicitação da API. Defina este parâmetro como HTTPS.
Subdomain Name: o sistema aloca automaticamente um nome de subdomínio para cada grupo de APIs para testes internos. O nome do subdomínio pode ser acessado 1000 vezes por dia.
Path: caminho para solicitar a API.
Gateway Response
Selecione uma resposta a ser exibida se o gateway falhar ao processar uma solicitação de API. Padrão: default.
Matching
Selecione Prefix match.
Authentication Mode
Modo de autenticação da API. Selecione None. (None: não recomendado para serviços reais. Todos os usuários terão acesso à API.)
- Configure as informações de back-end e clique em Next.
Tabela 6 Parâmetros para definir um serviço de back-end HTTP/HTTPS Parâmetro
Descrição
Load Balance Channel
Determine se o serviço de back-end será acessado usando um canal de balanceamento de carga. Para este exemplo, selecione Configure.
URL
Method: método de solicitação da API. Defina este parâmetro como ANY.
Protocol: defina este parâmetro como HTTP.
Load Balance Channel: selecione o canal criado.
Path: caminho do serviço de back-end.
- Defina a resposta e clique em Finish.
- Depure a API.
Na guia APIs, clique em Debug. Clique no botão Debug no fundo vermelho. Se o código de status 200 for retornado no resultado da resposta, a depuração será bem-sucedida. Em seguida, vá para a próxima etapa. Caso contrário, corrija o erro indicado na mensagem de erro.
- Publique a API.
Na guia APIs, clique em Publish, mantenha a opção padrão RELEASE e clique em OK. Quando o ponto de exclamação no canto superior esquerdo do botão Publish desaparecer, a publicação foi bem-sucedida. Em seguida, vá para a próxima etapa. Caso contrário, corrija o erro indicado na mensagem de erro.
- Crie um grupo de APIs.
- Chame a API.
- Vincule nomes de domínio independentes ao grupo desta API.
Na página de detalhes do grupo, clique na guia Group Information. O nome de domínio de depuração é usado apenas para desenvolvimento e teste e pode ser acessado 1000 vezes por dia. Vincule nomes de domínio independentes para expor APIs no grupo.
Clique em Bind Independent Domain Name para vincular nomes de domínio públicos registrados. Para obter detalhes, consulte Vinculação de um nome de domínio.
- Copie o URL da API.
Na guia APIs, copie o URL da API. Abra um navegador e insira o URL. Quando a resposta de sucesso definida é exibida, a invocação é bem-sucedida.
Figura 1 Cópia do URLAgora, a carga de trabalho do CCE é aberta criando um canal de balanceamento de carga.
- Vincule nomes de domínio independentes ao grupo desta API.
Método 2: abrir uma carga de trabalho do CCE importando-a
- Importe uma carga de trabalho do CCE.
- Vá para o console do APIG e escolha Gateways no painel de navegação.
- Escolha API Management > API Groups.
- Escolha Create API Group > Import CCE Workload.
- Especifique informações sobre a carga de trabalho do CCE a ser importada.
Tabela 7 Informações sobre a carga de trabalho Parâmetro
Descrição
Group
Padrão: New group.
Cluster
Selecione o cluster comprado.
Namespace
Selecione um namespace no cluster. Neste exemplo, selecione default.
Workload Type
Selecione Deployment. Este parâmetro deve ser o mesmo que o tipo da carga de trabalho criada.
Service Label Key
Selecione o rótulo do pod app e seu valor deployment-demo da carga de trabalho criada.
Service Label Value
Tag
Outro rótulo de pod version=v1 da carga de trabalho é selecionado automaticamente.
- Configure informações da API.
Tabela 8 Informações da API Parâmetro
Descrição
Protocol
Protocolo de solicitação da API. HTTPS é selecionado por padrão.
Request Path
Caminho de solicitação da API para correspondência de prefixo. Padrão: /. Neste exemplo, retenha o valor padrão.
Port
Digite 80. Isso deve ser o mesmo que a porta do container na carga de trabalho.
Authentication Mode
Padrão: None.
CORS
Desativado por padrão.
Timeout (ms)
Tempo limite de back-end. Padrão: 5000.
- Especifique informações sobre a carga de trabalho do CCE a ser importada.
- Clique em OK. A carga de trabalho do CCE é importada, com um grupo de APIs, uma API e um canal de balanceamento de carga gerados.
- Veja a API gerada e o canal de balanceamento de carga.
- Veja a API gerada.
- Clique no nome do grupo de APIs e, em seguida, veja o nome da API, o método de solicitação e o status de publicação na guia APIs.
- Clique na guia Backend Configuration e veja o canal de balanceamento de carga vinculado.
- Veja o canal de balanceamento de carga gerado.
- Escolha API Management > API Policies.
- Na guia Load Balance Channels, clique no nome do canal para exibir os detalhes.
- Verifique se esse canal de balanceamento de carga é o vinculado à API e, em seguida, vá para a próxima etapa. Se não estiver, repita 1.
- Veja a API gerada.
- Abra a API.
Como a importação de uma carga de trabalho do CCE já cria um grupo de APIs e uma API, você só precisa publicar a API em um ambiente.
- Depure a API.
Na guia APIs, clique em Debug. Clique no botão Debug no fundo vermelho. Se o código de status 200 for retornado no resultado da resposta, a depuração será bem-sucedida. Em seguida, vá para a próxima etapa.
- Publique a API.
Na guia APIs, clique em Publish, mantenha a opção padrão RELEASE e clique em OK. Quando o ponto de exclamação no canto superior esquerdo do botão Publish desaparecer, a publicação foi bem-sucedida. Em seguida, vá para a próxima etapa.
- Depure a API.
- Chame a API.
- Vincule nomes de domínio independentes ao grupo desta API.
Na página de detalhes do grupo, clique na guia Group Information. O nome de domínio de depuração é usado apenas para desenvolvimento e teste e pode ser acessado 1000 vezes por dia. Vincule nomes de domínio independentes para expor APIs no grupo.
Clique em Bind Independent Domain Name para vincular nomes de domínio públicos registrados. Para obter detalhes, consulte Vinculação de um nome de domínio.
- Copie o URL da API.
Na guia APIs, copie o URL da API. Abra um navegador e insira o URL. Quando a resposta de sucesso definida é exibida, a invocação é bem-sucedida.
Figura 2 Cópia do URLAgora, a carga de trabalho do CCE foi aberta importando-a.
- Vincule nomes de domínio independentes ao grupo desta API.
(Opcional) Configuração de rótulos de carga de trabalho para lançamento em escala de cinza
O lançamento em escala de cinza é uma política de lançamento de serviço que muda gradualmente o tráfego de uma versão anterior para uma versão posterior, especificando o peso da distribuição do tráfego. Os serviços são verificados durante o lançamento e a atualização. Se uma versão posterior atender à expectativa, você poderá aumentar a porcentagem de tráfego dessa versão e diminuir a da versão anterior. Repita esse processo até que uma versão posterior represente 100% e uma versão anterior seja reduzida a 0. Em seguida, o tráfego é alternado com sucesso para a versão posterior.

As cargas de trabalho do CCE são configuradas usando o seletor de rótulo do pod para o lançamento em escala de cinza. Você pode implementar e verificar rapidamente novos recursos e alternar servidores para processamento de tráfego. Para obter detalhes, consulte Uso de serviços para implementar o lançamento simples em escala de cinza e a implementação azul-verde.
O seguinte descreve como alternar suavemente o tráfego de V1 para V2 por meio do lançamento em escala de cinza.
- Crie uma carga de trabalho, defina um rótulo de pod com o mesmo valor que o rótulo app da carga de trabalho anterior. Para obter detalhes, consulte a carga de trabalho anterior.
Na página de criação da carga de trabalho, vá para a área Advanced Settings > Labels and Annotations e defina app=deployment-demo e version=v2. Se você criar uma carga de trabalho importando um arquivo YAML, adicione rótulos de pod nesse arquivo.
- Para o grupo de servidores com rótulo de pod version=v1, ajuste o peso do tráfego.
- No console do APIG, escolha Gateways no painel de navegação.
- Escolha API Management > API Policies.
- Na guia Load Balance Channels, clique no nome do canal criado.
- Na área Backend Server Address, clique em Modify.
- Altere o peso para 100 e clique em OK.
Peso é a porcentagem de tráfego a ser encaminhado. Todo o tráfego será encaminhado para os endereços IP do pod no grupo de servidores server_group_v1.
- Crie um grupo de servidores com o rótulo do pod version=v2 e, em seguida, defina o peso do tráfego.
- Na área Backend Server Address, clique em Create Server Group.
Tabela 9 Configuração do grupo de servidores Parâmetro
Descrição
Server Group Name
Digite server_group_v2.
Weight
Digite 1.
Backend Service Port
Digite 80.
Tag
Selecione o rótulo do pod version=v2.
- Clique em OK.
- Na área Backend Server Address, clique em Create Server Group.
- Atualize os endereços do servidor back-end.
Atualize a página para os endereços de servidor back-end. O canal de balanceamento de carga monitora automaticamente os endereços IP do pod da carga de trabalho e adiciona dinamicamente os endereços como endereços de servidor back-end. Conforme mostrado na figura a seguir, as tags app=deployment-demo e version=v2 correspondem automaticamente aos endereços IP do pod (endereços de servidor back-end) da carga de trabalho.
Figura 4 Endereços IP do pod correspondidos automaticamente100 de 101 (peso do grupo de servidores do peso total) tráfego é distribuído para server_group_v1 e o restante para a versão posterior de server_group_v2.
Figura 5 Clique em Modify no canto superior direito da página. - Verifique se os novos recursos lançados em V2 por meio da versão em escala de cinza estão funcionando de forma estável.
Se a nova versão atender à expectativa, vá para 6. Caso contrário, o lançamento do novo recurso falhará.
- Ajuste os pesos dos grupos de servidores para diferentes versões.
Diminua gradualmente o peso do server_group_v1 e aumente o do server_group_v2. Repita de 5 a 6 até que o peso do server_group_v1 seja 0 e o do server_group_v2 chegue a 100.
Como mostrado na figura anterior, todas as solicitações são encaminhadas para server_group_v2. Novos recursos são alterados de deployment-demo da carga de trabalho de version=v1 para deployment-demo2 de version=v2 por meio do lançamento em escala de cinza. (Você pode ajustar o peso do tráfego para atender aos requisitos de serviço.)
- Exclua o grupo de servidores back-end server_group_v1 de version=v1.
Agora todo o tráfego foi alterado para o grupo de servidores back-end de version=v2. Você pode excluir o grupo de servidores de version=v1.
- Vá para a página de detalhes do canal de balanceamento de carga no console do APIG, exclua todos os endereços IP do grupo de servidores de version=v1 na área Backend Server Address.
- Clique em Delete à direita desta área para excluir o grupo de servidores de version=v1.
O grupo de servidores back-end server_group_v2 de version=v2 é mantido.