【发布时间】:2015-02-20 09:15:16
【问题描述】:
我尝试像这样通过 jQuery Ajax 在 ASP.NET 中调用一个函数:
var params = "{'name':" + "\"" + name + "\"}";
$.ajax({
type: "POST",
url: "CreateTopic.aspx/CreateNewTopic",
data: params,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) {
},
failure: function (response) {
alert("Failed to send : " + response);
}
});
我得到 [HTTP/1.1 500 内部服务器错误]。
如果我这样做:
var params = "{'name':" + "\"" + name + "\"}";
$.post("CreateTopic.aspx/CreateNewTopic", params);
我得到:[HTTP/1.1 200 OK]
但是我在这里放的调试点:
[System.Web.Services.WebMethod]
public static object CreateNewTopic(string name)
{
return PrivateTopic.createNewTopic(name, 1);
}
未达到。
【问题讨论】:
-
唯一的区别似乎是发送和请求的数据格式。我希望 Post 默认不会发送/请求 JSON。由于我现在只使用 WebAPI,因此我无法评论您需要对 ASPX 进行的更改。
标签: javascript jquery asp.net ajax json