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 2023-03-29 GMT+08:00

Publicar APIs o tomar APIs fuera de línea

Función

Esta API se utiliza para publicar varias API en un entorno o para eliminar varias API del entorno en el que se han publicado.

URI

POST /v2/{project_id}/apigw/instances/{instance_id}/apis/publish

Tabla 1 Parámetros de path

Parámetro

Obligatorio

Tipo

Descripción

project_id

String

ID del proyecto. Para obtener detalles sobre cómo obtener un ID de proyecto, consulte "Apéndice" > "Obtención de un ID de proyecto" en este documento.

instance_id

String

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

Tabla 2 Parámetros de Query

Parámetro

Obligatorio

Tipo

Descripción

action

String

  • online: publicar APIs

  • offline: tomar APIs offline

Parámetros de solicitud

Tabla 3 Parámetros de encabezado de solicitud

Parámetro

Obligatorio

Tipo

Descripción

X-Auth-Token

String

Token de usuario. Se puede obtener llamando 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 4 Parámetros de body de solicitud

Parámetro

Obligatorio

Tipo

Descripción

apis

No

Array of strings

IDs de las API que se publicarán o se quitarán sin conexión. Puede publicar o tomar un máximo de 1000 API sin conexión a la vez.

env_id

No

String

ID de entorno.

remark

No

String

Descripción de la publicación.

No puede superar los 255 caracteres.

Parámetros de respuesta

Código de estado: 200

Tabla 5 Parámetros de body de respuesta

Parámetro

Tipo

Descripción

success

Array of PublishResp objects

Mensaje para una publicación exitosa de la API o puesta fuera de línea.

failure

Array of BatchFailure objects

Mensaje de error y API que no se pueden publicar o desconectar.

Tabla 6 PublishResp

Parámetro

Tipo

Descripción

publish_id

String

ID del registro de publicación.

api_id

String

ID de API.

api_name

String

Nombre de API.

env_id

String

ID del entorno en el que se ha publicado la API.

remark

String

Descripción de la publicación.

publish_time

String

Tiempo de publicación.

version_id

String

Versión de la API actualmente en uso.

Tabla 7 BatchFailure

Parámetro

Tipo

Descripción

api_id

String

ID de una API que no se publica o se desconecta.

api_name

String

Nombre de una API que no se publica o se desconecta.

error_code

String

Código de error.

error_msg

String

Mensaje de error.

Código de estado: 400

Tabla 8 Parámetros de body 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 9 Parámetros de body 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 10 Parámetros de body 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 11 Parámetros de body de respuesta

Parámetro

Tipo

Descripción

error_code

String

Código de error.

error_msg

String

Mensaje de error.

Solicitudes de ejemplo

{
  "apis" : [ "3a955b791bd24b1c9cd94c745f8d1aad", "abd9c4b2ff974888b0ba79be7e6b2762" ],
  "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
  "remark" : "Published to the production environment"
}

Ejemplo de respuestas

Código de estado: 200

OK

{
  "success" : [ {
    "publish_id" : "9f27d1dc4f4242a9abf88e563dbfc33d",
    "api_id" : "3a955b791bd24b1c9cd94c745f8d1aad",
    "api_name" : "Api_mock",
    "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
    "version_id" : "632b2c9e022941969af9a1d45735ae2c",
    "remark" : "Published to the production environment",
    "publish_time" : "2020-08-03T03:01:31.26522821Z"
  } ],
  "failure" : [ {
    "api_id" : "abd9c4b2ff974888b0ba79be7e6b2762",
    "error_code" : "APIG.3002",
    "error_msg" : "Api abd9c4b2ff974888b0ba79be7e6b2762 not found"
  } ]
}

Código de estado: 400

Bad Request

{
  "error_code" : "APIG.2011",
  "error_msg" : "Invalid parameter value: parameter action should be \\\"online\\\" or \\\"offline\\\""
}

Código de estado: 401

Unauthorized

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

Código de estado: 403

Forbidden

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

Código de estado: 500

Internal Server Error

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

Códigos de estado

Código de estado

Descripción

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

500

Internal Server Error

Códigos de error

Consulte Códigos de error.