Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Computação
Elastic Cloud Server
Bare Metal Server
Auto Scaling
Image Management Service
Dedicated Host
FunctionGraph
Cloud Phone Host
Huawei Cloud EulerOS
Redes
Virtual Private Cloud
Elastic IP
Elastic Load Balance
NAT Gateway
Direct Connect
Virtual Private Network
VPC Endpoint
Cloud Connect
Enterprise Router
Enterprise Switch
Global Accelerator
Gerenciamento e governança
Cloud Eye
Identity and Access Management
Cloud Trace Service
Resource Formation Service
Tag Management Service
Log Tank Service
Config
Resource Access Manager
Simple Message Notification
Application Performance Management
Application Operations Management
Organizations
Optimization Advisor
Cloud Operations Center
Resource Governance Center
Migração
Server Migration Service
Object Storage Migration Service
Cloud Data Migration
Migration Center
Cloud Ecosystem
KooGallery
Partner Center
User Support
My Account
Billing Center
Cost Center
Resource Center
Enterprise Management
Service Tickets
HUAWEI CLOUD (International) FAQs
ICP Filing
Support Plans
My Credentials
Customer Operation Capabilities
Partner Support Plans
Professional Services
Análises
MapReduce Service
Data Lake Insight
CloudTable Service
Cloud Search Service
Data Lake Visualization
Data Ingestion Service
GaussDB(DWS)
DataArts Studio
IoT
IoT Device Access
Outros
Product Pricing Details
System Permissions
Console Quick Start
Common FAQs
Instructions for Associating with a HUAWEI CLOUD Partner
Message Center
Segurança e conformidade
Security Technologies and Applications
Web Application Firewall
Host Security Service
Cloud Firewall
SecMaster
Anti-DDoS Service
Data Encryption Workshop
Database Security Service
Cloud Bastion Host
Data Security Center
Cloud Certificate Manager
Situation Awareness
Managed Threat Detection
Blockchain
Blockchain Service
Serviços de mídia
Media Processing Center
Video On Demand
Live
SparkRTC
Armazenamento
Object Storage Service
Elastic Volume Service
Cloud Backup and Recovery
Cloud Server Backup Service
Storage Disaster Recovery Service
Scalable File Service
Volume Backup Service
Data Express Service
Dedicated Distributed Storage Service
Containers
Cloud Container Engine
SoftWare Repository for Container
Application Service Mesh
Ubiquitous Cloud Native Service
Cloud Container Instance
Bancos de dados
Relational Database Service
Document Database Service
Data Admin Service
Data Replication Service
GeminiDB
GaussDB
Distributed Database Middleware
Database and Application Migration UGO
TaurusDB
Middleware
Distributed Cache Service
API Gateway
Distributed Message Service for Kafka
Distributed Message Service for RabbitMQ
Distributed Message Service for RocketMQ
Cloud Service Engine
EventGrid
Dedicated Cloud
Dedicated Computing Cluster
Aplicações de negócios
ROMA Connect
Message & SMS
Domain Name Service
Edge Data Center Management
Meeting
AI
Face Recognition Service
Graph Engine Service
Content Moderation
Image Recognition
Data Lake Factory
Optical Character Recognition
ModelArts
ImageSearch
Conversational Bot Service
Speech Interaction Service
Huawei HiLens
Developer Tools
SDK Developer Guide
API Request Signing Guide
Terraform
Koo Command Line Interface
Distribuição de conteúdo e computação de borda
Content Delivery Network
Intelligent EdgeFabric
CloudPond
Soluções
SAP Cloud
High Performance Computing
Serviços para desenvolvedore
ServiceStage
CodeArts
CodeArts PerfTest
CodeArts Req
CodeArts Pipeline
CodeArts Build
CodeArts Deploy
CodeArts Artifact
CodeArts TestPlan
CodeArts Check
Cloud Application Engine
MacroVerse aPaaS
KooPhone
KooDrive

Feito de uma solicitação de API

Atualizado em 2025-02-18 GMT+08:00

Esta seção descreve a estrutura de uma solicitação de API REST e usa a API do IAM para obtenção de um token de usuário como um exemplo para demonstrar como chamar uma API. O token obtido pode então ser usado para autenticar a chamada de outras API.

URI de solicitação

Um URI de solicitação está no seguinte formato:

{URI-scheme}://{Endpoint}/{resource-path}?{query-string}

Embora um URI de solicitação esteja incluído no cabeçalho da solicitação, a maioria das linguagens de programação ou estruturas exigem que o URI de solicitação seja transmitido separadamente.

Tabela 1 Descrição do parâmetro URI

Parâmetro

Descrição

URI-scheme

Protocolo usado para transmitir solicitações. Todas as API usam HTTPS.

Ponto de extremidade

Nome de domínio ou endereço IP do servidor que possui o serviço REST. O endpoint varia entre serviços em diferentes regiões. Ele pode ser obtido do Regiões e endpoints.

Por exemplo, o endpoint do IAM na região CN-Hong Kong é iam.ap-southeast-1.myhuaweicloud.com.

resource-path

Caminho de acesso de uma API para executar uma operação especificada. Obtenha o caminho a partir do URI de uma API. Por exemplo, o resource-path da API usada para obter um token de usuário é /v3/auth/tokens.

query-string

Parâmetro de consulta, que é opcional. Verifique se um ponto de interrogação (?) está incluído antes de cada parâmetro de consulta no formato nome do parâmetro=valor do parâmetro. Por exemplo, ? limit=10 indica que um máximo de 10 registros de dados serão exibidos.

Por exemplo, para obter um token do IAM na região CN-Hong Kong, obtenha o endpoint do IAM (iam.ap-southeast-1.myhuaweicloud.com) para essa região e o caminho do recurso (/v3/auth/ tokens) no URI da API usada para obter um token de usuário. Em seguida, construa o URI da seguinte forma:

1
https://iam.ap-southeast-1.myhuaweicloud.com/v3/auth/tokens
Figura 1 Exemplo de URI

Para simplificar a exibição de URI neste documento, cada API é fornecida apenas com um resource-path e um método de solicitação. O URI-scheme de todas as API é HTTPS, e os endpoints de todas as API na mesma região são idênticos.

Métodos de solicitação

O protocolo HTTP define os seguintes métodos de solicitação que podem ser usados para enviar uma solicitação ao servidor.
Tabela 2 Métodos HTTP

Método

Descrição

obter

Solicita que o servidor retorne os recursos especificados.

COLOCAR

Solicita que o servidor atualize os recursos especificados.

Postar

Solicita que o servidor adicione recursos ou execute operações especiais.

Excluir

Solicita que o servidor exclua recursos especificados, por exemplo, um objeto.

Cabeça

O mesmo que GET, exceto que o servidor deve retornar apenas o cabeçalho da resposta.

Patch

Solicita ao servidor que atualize o conteúdo parcial de um recurso especificado.

Se o recurso não existir, um novo recurso será criado.

Por exemplo, no caso da API usada para obter um token de usuário, o método de solicitação é POST. A solicitação é o seguinte:

POST https://iam.ap-southeast-1.myhuaweicloud.com/v3/auth/tokens

Cabeçalho da solicitação

Você também pode adicionar campos de cabeçalho adicionais a uma solicitação, como os campos exigidos por um método URI ou HTTP especificado. Por exemplo, para solicitar as informações de autenticação, adicione Content-Type, que especifica o tipo de corpo da solicitação.

Campos de cabeçalho de solicitação comuns são os seguintes.
Tabela 3 Campos comuns de cabeçalho de solicitação

Parâmetro

Descrição

Obrigatório

Exemplo Valor

Apresentador

Especifica o nome de domínio do servidor e o número da porta dos recursos que estão sendo solicitados. O valor pode ser obtido a partir do URL da API de serviço. O valor está no formato de Hostname:número da porta. Se o número da porta não for especificado, a porta padrão será usada. O número de porta padrão para https é 443.

No

Este campo é obrigatório para a autenticação AK/SK.

code.test.com

OU

code.test.com:443

Tipo de conteúdo

Especifica o tipo (ou formato) do corpo da mensagem. O valor padrão application/json é recomendado. Outros valores deste campo serão fornecidos para API específicas, se houver.

Sim

aplicação/json

Content-Length

Especifica o comprimento do corpo da solicitação. A unidade é byte.

Não

3495

X-Project-Id

Especifica o ID do projeto. Obtenha o ID do projeto seguindo as instruções em Obtenção de um ID de projeto.

No

Este campo é obrigatório para solicitações que usam autenticação AK/SK no cenário Dedicated Cloud (DeC) ou cenário multiprojeto.

e9993fc787d94b6c886cbaa340f9c0f4

X-Auth-Token

Especifica o token do usuário.

É uma resposta à API para obtenção de um token de usuário (Esta é a única API que não requer autenticação).

Depois que a solicitação é processada, o valor de X-Subject-Token no cabeçalho da resposta é o valor do token.

No

Este campo é obrigatório para autenticação de token.

O seguinte é parte de um exemplo de token:

MIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ

Além de oferecer suporte à autenticação usando tokens, as API oferecem suporte à autenticação usando AK/SK, que usa SDK para assinar uma solicitação. Durante a assinatura, os cabeçalhos de Authorization (autenticação de assinatura) e X-Sdk-Date (hora em que uma solicitação é enviada) são adicionados automaticamente na solicitação.

Para obter mais detalhes, consulte "Autenticação usando AK/SK" em Autenticação.

A API usada para obter um token de usuário não requer autenticação. Portanto, apenas o campo Content-Type precisa ser adicionado às solicitações para chamar a API. Um exemplo de tais solicitações é o seguinte:

POST https://iam.ap-southeast-1.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json

(Opcional) Corpo da solicitação

Esta parte é opcional. O corpo de uma solicitação geralmente é enviado em um formato estruturado, conforme especificado no campo de cabeçalho Content-Type. O corpo da solicitação transfere o conteúdo, exceto o cabeçalho da solicitação.

O corpo da solicitação varia entre as API. Algumas API não exigem o corpo da solicitação, como as API solicitadas usando os métodos GET e DELETE.

No caso da API usada para obter um token de usuário, os parâmetros da solicitação e a descrição do parâmetro podem ser obtidos a partir da solicitação da API. O seguinte fornece um exemplo de solicitação com um corpo incluído. Substituanome de usuário, nome de domain, ******** (login senha), e xxxxxxxxxxxxxxxxxx (nome do projeto) pelos valores reais. Obter um nome de projeto a partir do Regions and Endpoints.

O parâmetro scope especifica onde um token entra em vigor. Você pode definir scope para uma conta ou um projeto em uma conta. No exemplo a seguir, o token tem efeito somente para os recursos em um projeto especificado. Para obter mais informações sobre essa API, consulte Obtenção de um token de usuário.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
POST https://iam.ap-southeast-1.myhuaweicloud.com/v3/auth/tokens
Content-Type: application/json

{
    "auth": {
        "identity": {
            "methods": [
                "password"
            ],
            "password": {
                "user": {
                    "name": "username",
                    "password": "********",
                    "domain": {
                        "name": "domainname"
                    }
                }
            }
        },
        "scope": {
            "project": {
                "name": "xxxxxxxxxxxxxxxxxx"
            }
        }
    }
}

Se todos os dados necessários para a solicitação da API estiverem disponíveis, você poderá enviar a solicitação para chamar a API por meio de curl, Postman, ou coding. Na resposta à API usada para obter um token de usuário, x-subject-token é o token de usuário desejado. Esse token pode ser usado para autenticar a chamada de outras API.

Usamos cookies para aprimorar nosso site e sua experiência. Ao continuar a navegar em nosso site, você aceita nossa política de cookies. Saiba mais

Feedback

Feedback

Feedback

0/500

Conteúdo selecionado

Envie o conteúdo selecionado com o feedback