Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Centro de ayuda/ API Gateway/ Referencia de la API/ Invocación a las API/ Realización de una solicitud de API
Actualización más reciente 2025-12-22 GMT+08:00

Realización de una solicitud de API

Esta sección describe la estructura de una solicitud de las API de REST y utiliza la API de APIG para crear un grupo de API (gateways dedicados) como ejemplo para demostrar cómo invocar a una API.

URI de solicitud

Una URI de solicitud tiene el siguiente formato:

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

Aunque una URI de solicitud se incluye en el encabezado de la solicitud, la mayoría de los lenguajes o marcos de programación requieren que la URI de la solicitud se transmita por separado.

  • URI-scheme: Protocolo utilizado para transmitir solicitudes. Todas las API utilizan HTTPS.
  • Endpoint: Nombre de dominio o dirección IP del servidor que aloja el servicio REST. Puede obtenerse en Puntos de conexión. Por ejemplo, el punto de conexión de APIG en la región CN-Hong Kong es apig.ap-southeast-1.myhuaweicloud.com.
  • resource-path: ruta de acceso de una API para realizar una operación especificada. Obtenga la ruta del URI de una API. Por ejemplo, el resource-path de la API utilizada para crear un grupo de API (gateway dedicado) es /v2/{project_id}/apigw/instances/{instance_id}/api-groups. {project_id} indica un ID de proyecto y {instance_id} indica un ID de gateway. Los dos ID se pueden obtener de la información del gateway en la consola de APIG.
  • query-string: parámetro de consulta, que es opcional. Asegúrese de que se incluya un signo de interrogación (?) delante de cada parámetro de consulta que tenga el formato de Parameter name=Parameter value. Por ejemplo, limit=10 indica que se consultarán un máximo de 10 registros de datos.

Por ejemplo, si desea crear un grupo de API en la región CN-Hong Kong, configure URI-scheme como HTTPS, Endpoint como apig.ap-southeast-1.myhuaweicloud.com y resource-path como /v2/{project_id}/apigw/instances/{instance_id}/api-groups. Combine los parámetros en el URI.

https://apig.ap-southeast-1.myhuaweicloud.com/v2/{project_id}/apigw/instances/{instance_id}/api-groups

Para simplificar la visualización del URI en este documento, cada API solo se proporciona con un resource-path y un método de solicitud. El URI-scheme de todas las API es HTTPS y los puntos de conexión de todas las API en la misma región son idénticos.

Métodos de solicitud

El protocolo HTTP define los siguientes métodos de solicitud que se pueden utilizar para enviar una solicitud al servidor:

  • GET: solicita al servidor que devuelva los recursos especificados.
  • PUT: solicita al servidor que actualice los recursos especificados.
  • POST: solicita al servidor que agregue recursos o realice operaciones especiales.
  • DELETE: solicita al servidor que elimine los recursos especificados, por ejemplo, un objeto.
  • HEAD: igual que GET, excepto que el servidor debe devolver solo el encabezado de respuesta.
  • PATCH: solicita al servidor que actualice el contenido parcial de un recurso especificado. Si el recurso no existe, se creará un nuevo recurso.

Por ejemplo, en el caso de la API utilizada para crear un grupo de API, el método de solicitud es POST. La solicitud es la siguiente:

POST https://apig.ap-southeast-1.myhuaweicloud.com/v2/{project_id}/apigw/instances/{instance_id}/api-groups

Encabezado de la solicitud

También puede agregar campos de encabezado adicionales a una solicitud, como los campos requeridos por un URI o método HTTP especificado. Por ejemplo, para solicitar la información de autenticación, agregue Content-Type, que especifica el tipo de cuerpo de la solicitud.

Los campos de encabezado de solicitud comunes son los siguientes:
  • Content-Type: especifica el tipo o formato del cuerpo de la solicitud. Este campo es obligatorio y su valor predeterminado es application/json. Se proporcionarán otros valores de este campo para las API específicas, si los hay.
  • X-Sdk-Date: especifica la hora en que se envía una solicitud. Este campo es opcional. Cuando la autenticación AK/SK está habilitada, este campo se especifica automáticamente cuando se utiliza SDK para firmar la solicitud. Para obtener más información, véase Autenticación basada en AK/SK.
  • Autorización: especifica la información de autenticación de firma. Este campo es opcional. Cuando la autenticación AK/SK está habilitada, este campo se especifica automáticamente cuando se utiliza SDK para firmar la solicitud. Para obtener más información, véase Autenticación basada en AK/SK.
  • X-Auth-Token: especifica un token de usuario solo para la autenticación de API basada en tokens. El token de usuario es una respuesta a la API utilizada para obtener un token de usuario. Esta API es la única que no requiere autenticación.
  • X-Project-ID: especifica el ID del subproyecto. Este campo es opcional y se puede utilizar en escenarios de múltiples proyectos. El campo X-Project-ID es obligatorio en el encabezado de la solicitud para acceder a los recursos de un subproyecto con la autenticación basada en AK/SK.
  • X-Domain-ID: especifica el ID de la cuenta, que es opcional. Cuando se invocan las API de los servicios globales mediante la autenticación basada en AK/SK, X-Domain-ID debe configurarse en el encabezado de la solicitud.
Si se utiliza la autenticación basada en AK/SK, las solicitudes de la API utilizada para crear un grupo de API con los encabezados agregados son las siguientes:
POST https://apig.ap-southeast-1.myhuaweicloud.com/v2/{project_id}/apigw/instances/{instance_id}/api-groups
Content-Type: application/json
X-Sdk-Date: 20240416T095341Z 
Authorization: SDK-HMAC-SHA256 Access=****************, SignedHeaders=content-type;host;x-sdk-date, Signature=****************

Cuerpo de la solicitud

El cuerpo de una solicitud se envía a menudo en un formato estructurado como se especifica en Content-Type. El cuerpo de la solicitud transfiere el contenido que no es el encabezado de la solicitud. Si el cuerpo de la solicitud contiene caracteres chinos, establezca Content-type en utf-8. Por ejemplo, Content-Type: application/json; charset=utf-8.

Los cuerpos de solicitud varían entre las API. Algunas API no requieren el cuerpo de la solicitud, como las API solicitadas mediante los métodos GET y DELETE.

Para la API utilizada para crear un grupo de API, puede obtener los parámetros de solicitud y la descripción de los parámetros de la solicitud de API. Aquí hay un ejemplo de solicitud que incluye un cuerpo. Los campos en negrita deben configurarse según sea necesario.

  • name: nombre del grupo de API
  • remark: descripción del grupo de API
POST https://apig.ap-southeast-1.myhuaweicloud.com/v2/{project_id}/apigw/instances/{instance_id}/api-groups
POST https://{apig_endpoint}/v2/{project_id}/v2/{project_id}/apigw/instances/{instance_id}/api-groups
Content-Type: application/json
X-Sdk-Date: 20240416T095341Z 
Authorization: SDK-HMAC-SHA256 Access=****************, SignedHeaders=content-type;host;x-sdk-date, Signature=****************
{
	"name": "APIGroup_test",
	"remark": "api group remark"
}

Si todos los datos necesarios para la solicitud de API están disponibles, puede enviar la solicitud para invocar a la API a través de curl, Postman o codificación.