Condividi tramite


L'API di Azure restituisce una risposta vuota

Facendo riferimento all'articolo su Azure Gestione API Serie di risoluzione dei problemi, questo è il primo scenario del lab. Assicurarsi di aver seguito le istruzioni di configurazione del lab in base a questa situazione, per ricreare il problema.

Versione originale del prodotto: servizio Gestione API
Numero KB originale: 4464936

Sintomi

L'API Vuota API è costituita da due operazioni GetHeaders e GetMyIp. GetMyIp restituisce il valore dell'intestazione X-FORWARDED-FOR e GetHeaders restituisce tutti i valori dell'intestazione della richiesta. GetMyIp restituisce l'output previsto, ma improvvisamente GetHeaders ha iniziato a restituire una risposta vuota (nessun corpo della risposta).

Screenshot di una risposta vuota.

L'output previsto dell'API GetHeaders dovrebbe essere simile al seguente:

{
  "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"
  }
}

Passaggi per la risoluzione dei problemi

Per eseguire il debug di questo tipo di problemi, l'approccio migliore consiste nel raccogliere la traccia del controllo gestione API per controllare l'elaborazione delle richieste all'interno della pipeline di Gestione API.

  • Se si esamina la traccia, si noterà che manca il criterio forward-request.
  • Il criterio forward-request inoltra la richiesta in ingresso al servizio back-end specificato nel contesto della richiesta.
  • Se questo criterio viene rimosso, la richiesta non viene inoltrata al servizio back-end e i criteri nella sezione in uscita vengono valutati immediatamente dopo il completamento dei criteri nella sezione in ingresso.
  • Di conseguenza, se si controlla la <sezione back-end> dell'operazione GetHeaders in Blank-API , si noterà che i criteri forward-request vengono rimossi.
  • Aggiungere i criteri forward-request nella sezione back-end o aggiungere <base/> elemento in modo che erediti i criteri forward-request dal livello padre ,ad esempio dal livello API, che dovrebbe risolvere il problema.

Per altre informazioni, vedere i criteri forward-request .

Contattaci per ricevere assistenza

In caso di domande o bisogno di assistenza, creare una richiesta di supporto tecnico oppure formula una domanda nel Supporto della community di Azure. È possibile anche inviare un feedback sul prodotto al feedback della community di Azure.