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.
Actualización más reciente 2025-12-22 GMT+08:00

Vinculación de un complemento a las API

Función

Esta API se utiliza para enlazar un complemento a las API.

  • Los complementos solo pueden vincularse a las API publicadas.

  • Los complementos entran en vigor inmediatamente después de la unión.

  • Los complementos entran en vigor inmediatamente después de ser modificados.

  • Una API puede estar vinculada solo con un complemento del mismo tipo. Al enlazar otro complemento se sobrescribirá el anterior.

Método de invocación

Para obtener más información, véase invocación de API.

URI

POST /v2/{project_id}/apigw/instances/{instance_id}/plugins/{plugin_id}/attach

Tabla 1 Parámetros de ruta

Parámetro

Obligatorio

Tipo

Descripción

project_id

String

ID del proyecto. Para obtener más información sobre cómo obtenerlo, véase Obtención de un ID de proyecto.

instance_id

String

ID de gateway, que se puede obtener de la información de gateway en la consola de APIG.

plugin_id

String

ID de complemento.

Parámetros de solicitud

Tabla 2 Parámetros de encabezado de solicitud

Parámetro

Obligatorio

Tipo

Descripción

X-Auth-Token

String

Token de usuario. Se puede obtener invocando a la API de IAM utilizada para obtener un token de usuario. El valor de X-Subject-Token en el encabezado de respuesta es un token.

Tabla 3 Parámetros del cuerpo de solicitud

Parámetro

Obligatorio

Tipo

Descripción

env_id

String

ID del entorno para vincular a la API.

api_ids

Array of strings

IDs de API vinculadas.

Longitud de matriz: 1 - 500

Parámetros de respuesta

Código de estado: 201

Tabla 4 Parámetros del cuerpo de respuesta

Parámetro

Tipo

Descripción

attached_plugins

Array of PluginApiAttachInfo objects

Complementos vinculados.

Tabla 5 PluginApiAttachInfo

Parámetro

Tipo

Descripción

plugin_attach_id

String

ID de registro de enlace de complemento.

plugin_id

String

ID de complemento.

plugin_name

String

Nombre del complemento. Se comienza con una letra y solo se incluye letras, dígitos, guiones (-) y guiones bajos (_). (de 3 a 255 caracteres)

plugin_type

String

Tipo de complemento

  • cors: intercambio de recursos entre orígenes.

  • set_resp_headers: gestión de encabezados de respuesta HTTP.

  • kafka_log: empuje de log de Kafka.

  • breaker: interruptor.

  • rate_limit: Solicitud de limitación.

  • Third_auth: Autenticación de terceros.

  • proxy_cache: Caché de respuestas.

  • proxy_mirror: duplicación de solicitudes

plugin_scope

String

Alcance del complemento. global: Visible para todos los gateways.

env_id

String

ID del entorno para vincular a la API.

env_name

String

Nombre del entorno para vincular a la API.

api_id

String

ID de API.

api_name

String

Nombre de la API.

attached_time

String

Hora de vinculación.

Código de estado: 400

Tabla 6 Parámetros del cuerpo de respuesta

Parámetro

Tipo

Descripción

error_code

String

Código de error.

error_msg

String

Mensaje de error.

Código de estado: 401

Tabla 7 Parámetros del cuerpo de respuesta

Parámetro

Tipo

Descripción

error_code

String

Código de error.

error_msg

String

Mensaje de error.

Código de estado: 403

Tabla 8 Parámetros del cuerpo de respuesta

Parámetro

Tipo

Descripción

error_code

String

Código de error.

error_msg

String

Mensaje de error.

Código de estado: 404

Tabla 9 Parámetros del cuerpo de respuesta

Parámetro

Tipo

Descripción

error_code

String

Código de error.

error_msg

String

Mensaje de error.

Código de estado: 500

Tabla 10 Parámetros del cuerpo de respuesta

Parámetro

Tipo

Descripción

error_code

String

Código de error.

error_msg

String

Mensaje de error.

Ejemplo de las solicitudes

Vinculación de una API con complementos

{
  "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
  "api_ids" : [ "8aa097b00e9843efabc9c593d11b769d" ]
}

Ejemplo de respuestas

Código de estado: 201

Aceptar

{
  "attached_plugins" : [ {
    "plugin_attach_id" : "8aa097b00e9843efacb9c593d11b769e",
    "plugin_id" : "5b729aa252764739b3s237ef0d66dc63",
    "plugin_name" : "CORS",
    "plugin_type" : "cors",
    "plugin_scope" : "global",
    "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
    "env_name" : "RELEASE",
    "api_id" : "8aa097b00e9843efabc9c593d11b769d",
    "api_name" : "api_name",
    "attached_time" : "2022-11-02T12:31:23.353Z"
  } ]
}

Código de estado: 400

Error en la solicitud

{
  "error_code" : "APIG.2012",
  "error_msg" : "Invalid parameter value,parameterName:instance_id. Please refer to the support documentation"
}

Código de estado: 401

Sin autorización

{
  "error_code" : "APIG.1002",
  "error_msg" : "Incorrect token or token resolution failed"
}

Código de estado: 403

Prohibido

{
  "error_code" : "APIG.1005",
  "error_msg" : "No permissions to request this method"
}

Código de estado: 404

No se ha encontrado

{
  "error_code" : "APIG.3068",
  "error_msg" : "Plugin b294018ee0554156a875b3513e02e5b9 does not exist"
}

Código de estado: 500

Error del servidor interno

{
  "error_code" : "APIG.9999",
  "error_msg" : "System error"
}

Códigos de estado

Código de estado

Descripción

201

Aceptar

400

Error en la solicitud

401

Sin autorización

403

Prohibido

404

No se ha encontrado

500

Error del servidor interno

Códigos de error

Consulte Códigos de error.