Depuração de uma API
Função
Esta API é usada para depurar a definição de uma API em um ambiente especificado. O chamador da API deve ter as permissões necessárias para operar esta API.
URI
A tabela a seguir lista o método de solicitação HTTP/HTTPS e o URI da API.
|
Método de solicitação |
URI |
|---|---|
|
POST |
/v1.0/apigw/apis/debug/{api_id} |
A tabela a seguir lista o parâmetro no URI.
|
Parâmetro |
Obrigatório |
Tipo |
Descrição |
|---|---|---|---|
|
api_id |
Sim |
String |
ID da API |
Solicitação
|
Parâmetro |
Obrigatório |
Tipo |
Descrição |
|---|---|---|---|
|
scheme |
Sim |
String |
Protocolo de solicitação, que pode ser:
|
|
method |
Sim |
String |
Método de solicitação, que pode ser:
|
|
domain |
Não |
String |
Acesse o nome de domínio da API. Se nenhum valor for especificado, um dos seguintes valores padrão será usado com base na configuração de mode:
|
|
path |
Sim |
String |
Caminho de solicitação da API, começando com uma barra (/) e com até 1024 caracteres
NOTA:
O caminho da solicitação deve atender aos requisitos do caminho para que possa ser decodificado corretamente após a codificação de porcentagem. |
|
query |
Não |
Dicionário |
Parâmetros de consulta, com cada valor sendo uma matriz de cadeia de caracteres. Cada nome de parâmetro deve atender aos seguintes requisitos:
|
|
header |
Não |
Dicionário |
Parâmetros de cabeçalho, com cada valor sendo uma matriz de cadeia de caracteres. Cada nome de parâmetro deve atender aos seguintes requisitos:
NOTA:
Cada nome de cabeçalho é normalizado antes do uso. Por exemplo, x-MY-hEaDer é normalizado como X-My-Header. |
|
body |
Não |
String |
Corpo da mensagem, com um comprimento máximo de bytes de 2.097.152. |
|
mode |
Sim |
String |
Modo de depuração, que pode ser:
|
|
app_key |
Não |
String |
AppKey usado na solicitação de depuração |
|
app_secret |
Não |
String |
AppSecret usado na solicitação de depuração |
|
stage |
Não |
String |
Ambiente em execução especificado na solicitação de depuração. Este parâmetro só é válido quando mode está definido como CONSUMER. Se nenhum valor for especificado, RELEASE será usado. |
Exemplo de solicitação:
{
"mode": "DEVELOPER",
"scheme": "HTTPS",
"method": "GET",
"path": "/test",
"query": {
"city": [
"city01",
"city02"
]
},
"header": {
"X-My-City": [
"city01",
"city02"
]
}
}
Resposta
|
Parâmetro |
Tipo |
Descrição |
|---|---|---|
|
request |
String |
Corpo da solicitação de depuração |
|
response |
String |
Corpo da resposta de depuração, com um comprimento máximo de bytes de 2.097.152. Qualquer conteúdo além desse limite será truncado.
NOTA:
Qualquer conteúdo além do limite de comprimento será truncado e o texto [TRUNCATED] será adicionado ao corpo da resposta. |
|
latency |
String |
Duração da depuração em milissegundos |
|
log |
String |
Depuração de logs |
Exemplo de resposta:
{
"request": "GET /test?city=city01&city=city02 HTTP/1.1\r\nHost: edf94892b11d440795562cb81c5be059.apigw.example.com\r\nUser-Agent: APIGatewayDebugClient/1.0\r\nX-Apig-Mode: debug\r\nX-My-City: city01\r\nX-My-City: city02\r\n\r\n",
"response": "HTTP/1.1 200 OK\r\nContent-Length: 33\r\nConnection: keep-alive\r\nContent-Type: application/json; charset=utf-8\r\nDate: Fri, 24 Aug 2018 10:36:47 GMT\r\nServer: api-gateway\r\nX-Apig-Latency: 13\r\nX-Apig-Ratelimit-Api: remain:92,limit:100,time:1 minute\r\nX-Apig-Ratelimit-Api-Allenv: remain:9,limit:10,time:1 second\r\nX-Apig-Upstream-Latency: 1\r\nX-Request-Id: 12f69943cc2fa4f8a3674ee947655339\r\n\r\n{\"version\":\"4.0.12.201808190004\"}",
"latency": "12",
"log": ""
}
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 interno do servidor |