好的,所以由于某种原因,即使服务器返回 200 和有效的 json,我的 ajax 调用仍然失败。这是ajax调用:
$.ajax(
{
cache: false,
type: "GET",
url: "http://localhost:10590/api/entry",
dataType: "application/json; charset=utf-8",
success: function (result) {
alert('HIT');
},
error: function (request, type, errorThrown) {
alert('Fail' + type + ':' + errorThrown);
}
});
错误函数显示空白。类型说“错误”,但之后什么都没有。我试图弄清楚为什么会发生这种情况???
通过 fiddler 验证,这是从服务器返回的 json 字符串:
{
"EntryId":0,
"EntryDate":"2012-12-14T18:10:48.2275967-07:00",
"BodyWeight":207.00,
"Bmi":0.0,
"Fat":0.0,
"Visceral":0.0,
"MuscleMass":0.0
}
http://jsonlint.com/同意这是有效的 json。
更新:在 ajax 调用之前添加以下内容使其可以在 IE 中工作,但不能在 chrome 中工作:
$.support.cors = true;