Я что-то упустил? Я пытаюсь создать веб-сервис и потребителя в asp.net, используя JSON с JQuery, но мне не повезло. Я могу заставить JQuery вызывать службу и заставлять службу отвечать, но ответ всегда проходит обратный вызов «error» в JQuery. Когда я просматриваю ответ в FireBug, он выглядит как XML, а не JSON. Ниже мой сервис и соответствующий JQuery от клиента. Любая помощь будет оценена:
using System;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Web.Script.Services;
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ScriptService()]
public class ajaxService : System.Web.Services.WebService {
[WebMethod()]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public string HelloWorld()
{
return "Hello World";
}
}
***********************
JQuery
***********************
$(document).ready(function()
{
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
dataType: "json",
data: "{}",
url : "ajaxService.asmx/HelloWorld",
success : function( msg ) { alert( "success " + msg.d ); },
error : function( err ) { alert( err.status + " : " + err.statusText); }
});
});
В ответе всегда указывается «ОК: 200», а содержание ответа:
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/">Hello World</string>