ho appena aggiornato una copia di prova del mio sito su asp.net 4.0 e ho notato uno strano problema che si verifica solo quando carico il sito sul mio server.servizio web asmx restituendo xml invece di json in .net 4.0
il sito ha un servizio Web asmx che restituisce json, ma quando eseguo il sito sul mio server restituisce xml. ha funzionato bene in asp.net 3.5 per oltre un anno.
il WebMethod è decorato con gli attributi corretti ...
[WebMethod][ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public List<LocationRecentChange> RecentChanges()
e sulla mia macchina locale restituisce JSON.
ma sul server (Windows 2008 64 bit) restituisce xml.
utilizzando la console di firebug vedrete una risposta di 200 OK e un mucchio di XML, e sul mio computer locale i dati restituiti sono i JSON che mi aspetto.
Ecco il javascript che chiama il servizio ..
function loadRecentData() {
$.ajax({
type: "POST",
url: "service/spots.asmx/RecentChanges",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: loadRecentUpdates,
failure: function(msg) {
//alert(msg);
}
});
}
Eventuali suggerimenti di benvenuto, questo ha messo in difficoltà me!
Si scopre che il server ha qualcosa di funky in corso con IIS. Non riesco a ricreare il problema localmente, ma l'inserimento dell'elemento nel web.config lo risolve. – Baldy
Sto avendo esattamente lo stesso problema.Puoi modificare la risposta per includere il codice esatto che devo aggiungere al mio web.config (compresa la sezione in cui deve essere aggiunto)? Grazie. – njr101