L’API Azure retourne une réponse vide
En se référant à l’article sur la série de résolution des problèmes Azure Gestion des API, il s’agit du premier scénario du labo. Vérifiez que vous avez suivi les instructions de configuration du labo pour recréer le problème.
Version du produit d’origine : Gestion des API Service
Numéro de la base de connaissances d’origine : 4464936
Symptômes
L’API Vide d’API se compose de deux opérations GetHeaders et GetMyIp. GetMyIp retourne la valeur de l’en-tête X-FORWARDED-FOR et GetHeaders renvoie toutes les valeurs d’en-tête de requête. GetMyIp retourne la sortie attendue, mais tout à coup , GetHeaders a commencé à renvoyer une réponse vide (aucun corps de réponse).
La sortie attendue de l’API GetHeaders doit ressembler à ce qui suit :
{
"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"
}
}
Étapes de résolution des problèmes
Pour déboguer ce type de problèmes, la meilleure approche consiste à collecter la trace de l’inspecteur APIM pour inspecter le traitement des demandes dans le pipeline APIM.
- Si vous examinez la trace, vous remarquerez que la stratégie de demande de transfert est manquante.
- La stratégie de demande de transfert transfère la demande entrante au service principal spécifié dans le contexte de la demande.
- Si vous supprimez cette stratégie, la requête n’est pas transférée au service principal et les stratégies de la section sortante sont évaluées immédiatement après l’exécution réussie des stratégies dans la section entrante.
- Par conséquent, si vous case activée la <section back-end> de l’opération GetHeaders sous l’API vide, vous remarquerez que la stratégie de demande de transfert est supprimée.
- Ajoutez la stratégie de demande de transfert dans la section back-end ou ajoutez <la base /> l’élément afin qu’elle hérite de la stratégie de demande de transfert du niveau parent (c’est-à-dire du niveau API), ce qui doit résoudre le problème.
Pour en savoir plus à ce sujet, consultez la stratégie de demande de transfert.
Contactez-nous pour obtenir de l’aide
Pour toute demande ou assistance, créez une demande de support ou posez une question au support de la communauté Azure. Vous pouvez également soumettre des commentaires sur les produits à la communauté de commentaires Azure.
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour