HTTP GET funziona ma OPTIONS dice Risposta vuota dal server


1

Sto riscontrando questo problema in cui le chiamate ajax al mio server di sviluppo non funzionano. La cosa strana è che succede solo su questa macchina in particolare.

Succede su tutti i browser, quando uso il debugger di Chrome per ispezionare il traffico di rete, sembra che la richiesta OPTIONS non sia mai stata inviata e dice net :: ERR_EMPTY_RESPONSE sulla console. Si comporta allo stesso modo su tutti i browser di questo computer, ma funziona perfettamente su qualsiasi altro computer. Quando ho usato CURL o Telnet nel mio terminale per effettuare la chiamata delle opzioni, cURL ritorna

 Jon-MacBook-Air:~ jsmith$ curl -X OPTIONS http://dev.abc.com/dashboardLogin.php
 curl: (52) Empty reply from server

mentre Telnet ritorna

 Jon-MacBook-Air:~ jsmith$ telnet dev.abc.com 80 
 Trying 10.10.11.59...
 Connected to dev.abc.com.
 Escape character is '^]'.
 OPTIONS dashboardLogin.php HTTP/1.1
 Connection closed by foreign host.

Ho provato lo stesso indirizzo con GET sia con cURL che con Telnet, ed entrambi hanno funzionato bene. Consentitemi inoltre di ribadire che questo problema si verifica solo su questo computer con OSX Yosemite.

Risposte:


1

Ho avuto questo problema di recente: esattamente lo stesso comportamento in cui funzionavano le richieste HTTP GET, le richieste OPZIONI HTTPS funzionavano, ma OPZIONI HTTP (non sicure) no. Ho notato che c'era un processo in esecuzione chiamato in vpnagentdesecuzione in background, anche se non ero collegato a una VPN. Ho tracciato questo processo su un driver Cisco AnyConnect che ho dovuto installare per un progetto client. Dopo aver disinstallato Anyconnect, le richieste OPTIONS HTTP non protette hanno ripreso a funzionare. Se hai installato Anyconnect, prova a disinstallare e verifica se il problema è stato risolto.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.