ajax-请求错误,状态代码为200
从客户端,我想向服务器发送一些数据,并接收一些ajax-请求错误,状态代码为200,ajax,asp.net-mvc-5,Ajax,Asp.net Mvc 5,从客户端,我想向服务器发送一些数据,并接收一些标记,这些标记从视图(另一个控制器)响应 我的ajax代码如下所示: var sortTopic = function () { var $list = [], $address = '', $formData = new FormData(); /* do something here to set value to $list and $address */ $formData.appe
标记,这些标记从视图(另一个控制器)响应
我的ajax代码如下所示:
var sortTopic = function () {
var $list = [],
$address = '',
$formData = new FormData();
/* do something here to set value to $list and $address */
$formData.append('Category', $list);
$formData.append('Address', $address);
$formData.append('Tags', '[KM]');
$formData.append('Skip', 0);
$.ajax({
url: '/Topic/Sort',
type: 'POST',
data: $formData,
dataType: 'json',
contentType: false,
processData: false,
success: function (data) {
if (!data.success) {
$('.jumbotron').html(data.ex);
} else {
$('.jumbotron').html(data);
}
},
error: function (xhr) {
alert(xhr.status); //xhr.status: 200
}
});
};
在TopicController
中,操作Sort
为:
[AllowAnonymous]
[HttpPost]
public ActionResult Sort(SortTopicViewModel model)
{
try
{
if (model.IsValidSortTopicModel())
{
return PartialView("../Home/_Timeline", new TopicMaster().Sort(model));
}
return Json(new { success = false, ex = "Invalid model." });
}
catch (Exception e) { return Json(new { success = false, ex = e.Message }); }
}
我确信model
是有效的,并且方法newtopicmaster().Sort(model)
工作正常(因为我放置了断点以查看返回数据)。部分视图\u Timeline
是HomeController
的部分视图
我的问题是:我不明白为什么在ajax中出现状态代码为200的error
:
错误:函数(xhr){
警报(xhr.status);//xhr.status:200
}
你能给我解释一下吗
谢谢大家! 正如您所说,您收到的不是json的
响应,并且您在ajax中提到了数据类型:“json”
,只需将其删除即可。这会解决你的问题。当您没有得到ajax中提到的有效响应时,会出现错误200
有关更多信息,请阅读谢谢!这就解决了我的问题。我能问你一个小问题吗?在服务器端,如果模型
无效,我想向客户端发送一条错误消息。在我的示例中,它位于以下行:returnjson(new{success=false,ex=“Invalid model.”)代码>。那么,如果我删除数据类型:“json”
,它能工作吗?是的,这会工作,但是在删除数据类型:“json”
之后,您需要用json解析您的响应。正如您所说,您收到的是
,那么您将如何识别您收到的是html
或json
。