A API do Azure está retornando uma resposta em branco
Referindo-se ao artigo sobre a série de solução de problemas do Gerenciamento de API do Azure, este é o primeiro cenário do laboratório. Certifique-se de ter seguido as instruções de configuração do laboratório de acordo com isso, para recriar o problema.
Versão original do produto: Serviço de Gerenciamento de API
Número original da base de conhecimento: 4464936
Sintomas
A API API Blank consiste em duas operações: GetHeaders e GetMyIp. GetMyIp retorna o valor do cabeçalho X-FORWARDED-FOR e GetHeaders retorna todos os valores de cabeçalho de solicitação. GetMyIp retorna a saída esperada, mas de repente GetHeaders começou a retornar uma resposta em branco (sem corpo de resposta).
A saída esperada da API GetHeaders deve ser algo como abaixo:
{
"headers": {
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"Accept-Encoding": "gzip, deflate",
"Accept-Language": "en-US,en;q=0.5",
"Connection": "close",
"Cookie": "_gauges_unique_day=1; _gauges_unique_month=1; _gauges_unique_year=1; _gauges_unique=1",
"Host": "eu.httpbin.org",
"Upgrade-Insecure-Requests": "1",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0"
}
}
Etapas de solução de problemas
Para depurar esse tipo de problema, a melhor abordagem é coletar o rastreamento do inspetor do APIM para inspecionar o processamento de solicitações dentro do pipeline do APIM.
- Se você examinar o rastreamento, notará que a política de solicitação de encaminhamento está ausente.
- A política de solicitação de encaminhamento encaminha a solicitação de entrada para o serviço de back-end especificado no contexto da solicitação.
- A remoção dessa política resulta na solicitação não ser encaminhada para o serviço de back-end e as políticas na seção de saída serem avaliadas imediatamente após a conclusão bem-sucedida das políticas na seção de entrada.
- Portanto, se você verificar a <seção de back-end> da operação GetHeaders em Blank-API, notará que a política de solicitação de encaminhamento foi removida.
- Adicione a política de solicitação de encaminhamento na seção de back-end ou adicione <base /> elemento para que ele herde a política de solicitação de encaminhamento do nível pai (ou seja, do nível da API), o que deve resolver o problema.
Leia sobre a política de solicitação de encaminhamento para saber mais sobre ela.
Entre em contato conosco para obter ajuda
Se você tiver dúvidas ou precisar de ajuda, crie uma solicitação de suporte ou peça ajuda à comunidade de suporte do Azure. Você também pode enviar comentários sobre o produto para a comunidade de comentários do Azure.