2012-03-09 17 views
10

Sto iniziando a utilizzare la nuova API Web ASP.NET. Quando apro una chiamata al metodo di servizio di esempio utilizzando un browser come FF o Chrome, restituisce correttamente l'xml nel browser. Tuttavia, in Internet Explorer (7-9) si porta in primo piano un prompt:API Web ASP.NET in IE

Vuoi aprire o salvare leggere (58 byte) da [nome server]?

Quando seleziono Apri, chiede a quale programma aprire e quindi visualizzerà l'xml in quel programma. Speravo in quanto i metodi accettano il metodo GET che restituirebbe solo i risultati nel browser, tuttavia ciò non sembra essere il caso di IE. Ho incontrato questo tipo di problema prima con ASP.NET MVC quando restituisco JSON, tuttavia non sto nemmeno restituendo JSON in questo caso.

Come si comunica a IE di restituire i risultati nel browser come FF e Chrome?

risposta

4

L'ho notato anche io. In realtà sta restituendo i risultati come JSON. Per visualizzare il risultato della chiamata, accedi agli strumenti di sviluppo (F12), quindi vai su Rete, fai clic su Avvia monitoraggio e invia di nuovo la richiesta. Dovresti vedere il risultato apparire nell'elenco di tracce. È quindi possibile fare doppio clic su di esso e selezionare Visualizza corpo per vedere il corpo della risposta.

0

Non è una specie di grosso problema. IE non sa come gestire questi formati. In chrome, non visualizza il JSON in modo positivo. Ho installato un'estensione chiamata JSONView su Google Chrome, ora ho una bella vista.

IMO, non mi interessa. A scopo di test, utilizzo sempre Fiddler, che è più bello e hai il pieno controllo sulla richiesta in termini di intestazioni e altre cose.

+1

È un grosso problema se devi supportare IE – nickbw

+0

@nickbw vuoi che i tuoi utenti visualizzino l'output di json su IE? – tugberk

+0

Vorrei che tutti usassero chrome, tuttavia alcuni di loro usano versioni precedenti di IE e l'unico modo in cui sono stato in grado di usare la risposta JSON è cambiando il tipo di contenuto in "text/plain", e quindi analizzando la risposta. – nickbw

4

So che è un po 'tardi per postare un'altra risposta, ma potrebbe essere utile per gli altri che sono davvero entusiasti di fare in modo che IE mostri i risultati dell'API Web ASP.NET nella propria finestra. Ho provato la soluzione elencata nel seguente thread SOF e ha funzionato per me.

How can I convince IE to simply display application/json rather than offer to download it?

risultati API Ora Web in formato JSON vengono visualizzati nella mia finestra di IE.

+0

Il collegamento fornisce una rapida modifica del registro che risolverà bene questo problema. – atconway