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.
Atualizado em 2023-05-29 GMT+08:00

Importação de APIs

Função

Esta API é usada para importar APIs. O conteúdo do arquivo importado deve estar em conformidade com o padrão Swagger. Para obter detalhes sobre os campos estendidos personalizados, consulte a seção "Importação e exportação de APIs: definição estendida" no Guia de desenvolvedor.

URI

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

Tabela 1 Parâmetros de caminho

Parâmetro

Obrigatório

Tipo

Descrição

project_id

Sim

String

ID do projeto. Para obter detalhes sobre como obter um ID de projeto, consulte "Apêndice" > "Obtenção de um ID de projeto" neste documento.

instance_id

Sim

String

ID do gateway, que pode ser obtido a partir das informações de gateway no console do APIG.

Parâmetros de solicitação

Tabela 2 Parâmetros do cabeçalho de solicitação

Parâmetro

Obrigatório

Tipo

Descrição

X-Auth-Token

Sim

String

Token do usuário. Ele pode ser obtido chamando a API do IAM usada para obter um token de usuário. O valor de X-Subject-Token no cabeçalho da resposta é um token.

Tabela 3 Parâmetros FormData

Parâmetro

Obrigatório

Tipo

Descrição

is_create_group

Não

Boolean

Especifica se um grupo de APIs deve ser criado.

Padrão: true

group_id

Não

String

ID do grupo da API. Este parâmetro é necessário se is_create_group estiver definido como false.

extend_mode

Não

String

Modo de importação de informações estendidas.

  • merge: manter as informações estendidas originais se ocorrer um conflito.

  • override: substituir as informações estendidas originais se ocorrer um conflito.

Padrão: merge

Valores de enumeração:

  • merge

  • override

simple_mode

Não

Boolean

Especifica se a importação rápida deve ser ativada.

Padrão: false

mock_mode

Não

Boolean

Especifica se deve ativar o back-end Fictício.

Padrão: false

api_mode

Não

String

Modo de importação.

  • merge: manter as informações originais da API se ocorrer um conflito.

  • override: substituir as informações originais da API se ocorrer um conflito.

Padrão: merge

Valores de enumeração:

  • merge

  • override

file_name

Sim

File

Corpo da solicitação no formato JSON ou YAML para importar APIs.

Parâmetros de resposta

Código de status: 200

Tabela 4 Parâmetros de corpo de resposta

Parâmetro

Tipo

Descrição

success

Array of Success objects

Importar informações de sucesso.

failure

Array of Failure objects

Importar informações de falha.

swagger

Swagger object

Resultado da importação do arquivo Swagger.

Atualmente, este parâmetro não é suportado.

group_id

String

ID do grupo da API.

ignore

Array of Ignore objects

APIs que não são importadas.

Tabela 5 Sucesso

Parâmetro

Tipo

Descrição

path

String

Caminho de solicitação da API.

method

String

Método de solicitação da API.

action

String

Tipo de importação. Opções:

  • update: atualizar as APIs para um grupo de API existente.

  • create: criar APIs para um novo grupo de APIs.

Valores de enumeração:

  • update

  • create

id

String

ID de uma API importada com sucesso.

Tabela 6 Falha

Parâmetro

Tipo

Descrição

path

String

Caminho de solicitação da API.

error_msg

String

Mensagem de erro exibida para uma falha de importação.

method

String

Método de solicitação da API.

error_code

String

Código de erro exibido para uma falha de importação.

Tabela 7 Swagger

Parâmetro

Tipo

Descrição

id

String

Arquivo Swagger nº.

result

String

Importar a descrição do resultado.

Tabela 8 Ignorar

Parâmetro

Tipo

Descrição

method

String

Método de solicitação da API.

path

String

Caminho de solicitação da API.

Código de status: 400

Tabela 9 Parâmetros de corpo de resposta

Parâmetro

Tipo

Descrição

error_code

String

Código de erro.

error_msg

String

Mensagem de erro.

Código de status: 401

Tabela 10 Parâmetros de corpo de resposta

Parâmetro

Tipo

Descrição

error_code

String

Código de erro.

error_msg

String

Mensagem de erro.

Código de status: 403

Tabela 11 Parâmetros de corpo de resposta

Parâmetro

Tipo

Descrição

error_code

String

Código de erro.

error_msg

String

Mensagem de erro.

Código de status: 404

Tabela 12 Parâmetros de corpo de resposta

Parâmetro

Tipo

Descrição

error_code

String

Código de erro.

error_msg

String

Mensagem de erro.

Código de status: 500

Tabela 13 Parâmetros de corpo de resposta

Parâmetro

Tipo

Descrição

error_code

String

Código de erro.

error_msg

String

Mensagem de erro.

Exemplo de solicitações

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

Exemplo de respostas

Código de status: 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 status: 400

Solicitação inválida

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

Código de status: 401

Não autorizado

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

Código de status: 403

Proibido

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

Código de status: 404

Não encontrado

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

Código de status: 500

Erro do servidor interno

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

Códigos de status

Código de status

Descrição

200

OK

400

Solicitação inválida

401

Não autorizado

403

Proibido

404

Não encontrado

500

Erro do servidor interno

Códigos de erro

Consulte Códigos de erro.