我正在构建一个带有Angular前端的MVC应用程序。我有一个AJAX调用,在页面加载时通过Home Controller中的Action Method自动从连接服务中提取数据。
我正在调试一个由AJAX get
方法抛出的错误,并且无法弄清楚出了什么问题。
以下是作品
行动方法:
public JsonResult DataRefresh()
{
string data = ServiceCache.NewDataCheck(DataConfig.currentUser.UserName);
return Json(data);
}
我设置break-point to confirm data
保存格式正确的Json字符串
这是AJAX Call +包含它的Angular控制器:
// Stores the serialized contents of the view model
app.controller("processModel", function ($scope) {
$scope.sortType = 'SchedWk';
$scope.sortReverse = false;
$scope.GetData = function() {
LoadData();
};
function LoadData() {
$.ajax({
type: "GET",
url: 'Home/DataRefresh',
dataType: "json",
success: function (data) {
$scope.data = data;
},
error: function (a, b, c) {
alert("The jqXHR object: " + a + " Error Type: " + b + " Error Description: " + c);
}
});
return false;
};
});
我在页面加载时成功调用了这个方法,这会触及上面的Action方法,但是我得到以下错误:
这是我的第一个使用AJAX的项目,所以我几乎不知道如何破译这个错误信息。我通读documentation并且没有任何关于这些特定错误消息值可能指示的其他信息。
我能说的最有用的信息是它不是Parse Error,因此返回的JSON字符串的格式可能是正确的。
更新:
我在JsonResult Action Method的返回中添加了JsonRequestBehavior.AllowGet
,并且停止了抛出错误,但是我仍然没有任何数据。我认为尝试直接在AJAX函数中访问Angular $ scope可能是个问题。