【发布时间】:2017-06-09 22:18:52
【问题描述】:
我正在尝试从我的控制器中获取 JSON 以在 jQuery 中使用。我有以下代码。当我在浏览器中访问 URL 时,它会返回 json,所以我知道控制器正在工作……但我得到以下信息
GET http://localhost:52802/Checkout/GetContactById?id=1net::ERR_INCOMPLETE_CHUNKED_ENCODING
客户端 jQuery
var theUrl = window.location.origin + '/Checkout/GetContactById?id=' + contactId;
$.ajax({
url: theUrl,
type: "GET",
success: function (result) {
alert("Success");
},
error: function (error) {
alert("Error");
}
});
服务器端控制器
[HttpGet]
public IActionResult GetContactById(int id)
{
Contact contact = this.checkoutDataAccess.GetContactById(id);
return Json(contact);
}
我得到的唯一警报是“错误”
更新
经过更多研究,看起来一切都在加载......但我收到一个错误
加载响应数据失败
在控制台中。
我单步执行了代码,一切都在控制器端运行。我不确定它是否没有正确格式化 JSON,或者我没有正确接收它。无论哪种方式,我都不知道发生了什么。
【问题讨论】:
-
使用您的浏览器工具(网络选项卡)检查响应 - 它会为您提供有关错误的更多详细信息。
-
你测试过GetContactById方法的工作吗?
-
@StephenMuecke 它给出了 500 错误我在帖子中添加了更多详细信息以及我收到的错误
-
@DanielVorph 是的,但是当从 json 调用它时我没有测试它,只是直接访问 URL。当我通过 JSON 调用它后,我能够重新创建错误。我将详细信息和异常错误作为更新放在上面的帖子中
-
你的方法是GET,所以需要
return Json(contact, JsonResuestBehavior.AllowGet);
标签: jquery json asp.net-mvc-4 asp.net-core asp.net-core-mvc