Je viens de mettre à jour une copie de test de mon site vers asp.net 4.0 et j'ai remarqué un problème étrange qui ne se pose que lorsque je télécharge le site sur mon serveur.Service Web asmx renvoyant xml au lieu de json dans .net 4.0
le site a un service Web asmx qui renvoie json, mais quand je lance le site sur mon serveur, il renvoie xml. Cela fonctionne correctement sur asp.net 3.5 depuis plus d'un an.
le WEBMETHOD est décoré avec les attributs corrects ...
[WebMethod][ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public List<LocationRecentChange> RecentChanges()
et sur ma machine locale, il retourne JSON.
encore sur le serveur (Windows 2008 64bit) il renvoie xml. En utilisant la console firebug, vous verrez une réponse 200 OK et un tas de XML, et sur ma machine locale les données retournées sont celles que j'attends.
Voici le javascript qui appelle le service ..
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);
}
});
}
Toute suggestion bienvenue, cela a m'a fait perplexe!
Il s'avère que le serveur a quelque chose de funky avec IIS. Je ne peux pas recréer le problème localement, mais l'insertion de l'élément dans le fichier web.config le corrige. – Baldy
J'ai exactement le même problème.Pouvez-vous modifier la réponse pour inclure le code exact que j'ai besoin d'ajouter à mon web.config (y compris la section à laquelle il doit être ajouté)? Merci. – njr101