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

Importación de APIs

Función

Esta API se utiliza para importar APIs. El contenido del archivo importado debe cumplir con el estándar Swagger. Para obtener más información sobre los campos extendidos personalizados, consulte la sección "Importación y exportación de API: definición extendida" en la Guía para desarrolladores.

URI

POST /v2/{project_id}/apigw/instances/{instance_id}/openapi/import

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.

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 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 3 Parámetros de FormData

Parámetro

Obligatorio

Tipo

Descripción

is_create_group

No

Boolean

Especifica si se va a crear un grupo de API.

Predeterminado: true

group_id

No

String

ID de grupo de API. Este parámetro es necesario si is_create_group se establece en false.

extend_mode

No

String

Modo de importación de información extendida.

  • merge: Conservar la información extendida original si se produce un conflicto.

  • override: invalidar la información extendida original si se produce un conflicto.

Predeterminado: merge

Valores de enumeración:

  • merge

  • override

simple_mode

No

Boolean

Especifica si se habilitará la importación rápida.

Predeterminado: false

mock_mode

No

Boolean

Especifica si se debe habilitar el backend simulado.

Predeterminado: false

api_mode

No

String

Modo de importación.

  • merge: conservar la información original de la API si se produce un conflicto.

  • override: invalidar la información original de la API si se produce un conflicto.

Predeterminado: merge

Valores de enumeración:

  • merge

  • override

file_name

File

Cuerpo de la solicitud en formato JSON o YAML para importar APIs.

Parámetros de respuesta

Código de estado: 200

Tabla 4 Parámetros de body de respuesta

Parámetro

Tipo

Descripción

success

Array of Success objects

Importar información de éxito.

failure

Array of Failure objects

Importar información de error.

swagger

Swagger object

Resultado de importación de archivo Swagger.

Actualmente, este parámetro no es compatible.

group_id

String

ID de grupo de API.

ignore

Array of Ignore objects

APIs que no se importan.

Tabla 5 Success

Parámetro

Tipo

Descripción

path

String

Ruta de solicitud de API.

method

String

Método de solicitud de API.

action

String

Tipo de importación. Opciones:

  • update: actualizar las API a un grupo de API existente.

  • create: Crear APIs para un nuevo grupo de API.

Valores de enumeración:

  • update

  • create

id

String

ID de una API importada correctamente.

Tabla 6 Failure

Parámetro

Tipo

Descripción

path

String

Ruta de solicitud de API.

error_msg

String

Aparece un mensaje de error por un error de importación.

method

String

Método de solicitud de API.

error_code

String

Se muestra el código de error de un error de importación.

Tabla 7 Swagger

Parámetro

Tipo

Descripción

id

String

Archivo Swagger No.

result

String

Descripción de resultado de importación.

Tabla 8 Ignore

Parámetro

Tipo

Descripción

method

String

Método de solicitud de API.

path

String

Ruta de solicitud de API.

Código de estado: 400

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: 401

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: 403

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.

Código de estado: 404

Tabla 12 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 13 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

{
  "is_create_group" : false,
  "group_id" : "d9ce8c9eede54b3f841ec324fe0bfdc2",
  "file_name" : "APIGroup_test.json"
}

Ejemplo de respuestas

Código de estado: 200

OK

{
  "group_id" : "d9ce8c9eede54b3f841ec324fe0bfdc2",
  "failure" : [ {
    "path" : "/test/demo",
    "error_msg" : "The API already exists, An API with the same combination of the method, path, and x-apigateway-match-mode fields already exists. API name: API_demo",
    "method" : "GET",
    "error_code" : "APIG.3301"
  } ],
  "success" : [ {
    "path" : "/test",
    "method" : "GET",
    "action" : "create",
    "id" : "8ae6bcafab6f49d78242bff26ad8a4f0"
  } ],
  "swagger_id" : "412488ba965041f9838a5266a5f8e574",
  "result" : "Success"
}

Código de estado: 400

Bad Request

{
  "error_code" : "APIG.3201",
  "error_msg" : "The API group name already exists"
}

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: 404

Not Found

{
  "error_code" : "APIG.3001",
  "error_msg" : "API group not found"
}

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

404

Not Found

500

Internal Server Error

Códigos de error

Consulte Códigos de error.