Как создать JSONP из веб-службы ASP.NET для междоменных вызовов?
мы написали веб-сервис, который возвращает JSON и ямы пытались вызвать его с помощью jQuery следующим образом:
$.ajax({
contentType: "application/json; charset=utf-8",
url: "http://examplewebsite.com/service.asmx/GetData",
data: { projectID: 1 },
dataType: "jsonp",
success: function () {alert("success");}
});
Однако код никогда не вызывает функцию успеха, несмотря на то, что вызов веб-службы был успешным при просмотре HTTP-трафика с использованием Fiddler. Я думаю, это потому, что мой веб-сервис возвращает сырой JSON вместо JSONP.
Как я могу создать JSONP в качестве ответа от стандартного метода веб-службы .NET, например:
[WebMethod(), ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)]
public Project GetData(int projectID)
{
Project p = new Project();
p.Name = "foobar";
return p;
}
Thanks.I»