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

Publicar APIs ou deixar APIs off-line

Função

Esta API é usada para publicar várias APIs em um ambiente ou para remover várias APIs do ambiente em que foram publicadas.

URI

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

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.

Tabela 2 Parâmetros de consulta

Parâmetro

Obrigatório

Tipo

Descrição

action

Sim

String

  • on-line: publicar APIs

  • off-line: deixar APIs off-line

Parâmetros de solicitação

Tabela 3 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 4 Parâmetros de corpo de solicitação

Parâmetro

Obrigatório

Tipo

Descrição

apis

Não

Array of strings

IDs das APIs a serem publicadas ou deixadas off-line. Você pode publicar ou deixar no máximo 1000 APIs off-line por vez.

env_id

Não

String

ID do ambiente.

remark

Não

String

Descrição da publicação.

Não pode exceder 255 caracteres.

Parâmetros de resposta

Código de status: 200

Tabela 5 Parâmetros de corpo de resposta

Parâmetro

Tipo

Descrição

success

Array of PublishResp objects

Mensagem para publicação de API bem-sucedida ou retirada off-line.

failure

Array of BatchFailure objects

Mensagem de erro e APIs que falham ao serem publicadas ou deixadas off-line.

Tabela 6 PublishResp

Parâmetro

Tipo

Descrição

publish_id

String

ID do registro da publicação.

api_id

String

ID da API.

api_name

String

Nome da API.

env_id

String

ID do ambiente no qual a API foi publicada.

remark

String

Descrição sobre a publicação.

publish_time

String

Tempo de publicação.

version_id

String

Versão da API atualmente em uso.

Tabela 7 BatchFailure

Parâmetro

Tipo

Descrição

api_id

String

ID de uma API que não foi publicada ou deixada offline.

api_name

String

Nome de uma API que não foi publicada ou deixada offline.

error_code

String

Código de erro.

error_msg

String

Mensagem de erro.

Código de status: 400

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

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

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.

Exemplo de solicitações

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

Exemplo de respostas

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

Solicitação inválida

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

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

500

Erro do servidor interno

Códigos de erro

Consulte Códigos de erro.