Właśnie zaktualizowałem kopię testową mojej witryny do wersji asp.net 4.0 i zauważyłem dziwny problem, który pojawia się tylko wtedy, gdy przesyłam stronę na mój serwer.Usługa webowa zwracająca xml zamiast json w .net 4.0
Witryna ma serwis WWW ASMX, który zwraca json, ale po uruchomieniu witryny na moim serwerze zwraca xml. to działa dobrze w asp.net 3.5 przez ponad rok.
WebMethod ozdobiony jest poprawnych atrybutów ...
[WebMethod][ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public List<LocationRecentChange> RecentChanges()
i na moim komputerze lokalnym zwraca JSON.
jeszcze na serwerze (Windows 2008 64bit) zwraca xml.
za pomocą konsoli firebug zobaczysz 200 odpowiedzi OK i kilka XML, a na moim komputerze lokalnym zwrócone dane to JSON, którego oczekuję.
Oto JavaScript, który wywołuje usługę ..
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);
}
});
}
Wszelkie sugestie mile widziane, to ma mnie stumped!
Okazuje się, że serwer ma coś ciekawego z IIS. Nie mogę odtworzyć problemu lokalnie, ale wstawienie elementu do pliku web.config powoduje jego usunięcie. – Baldy
Mam dokładnie ten sam problem.Czy możesz edytować odpowiedź, podając dokładny kod, który muszę dodać do mojego pliku web.config (w tym do której sekcji należy dodać)? Dzięki. – njr101