从ajax呼叫没有响应
我一直在试图让这个ajax呼叫工作几个小时,并没有能够解决任何可能的问题,因为一切似乎根据jQuery Ajax Call正确编码。从我可以告诉代码甚至没有被执行。然而,当我手动运行API调用我得到以下JSON结果:从ajax呼叫没有响应
<UnitsOfMeasure.UnitsOfMeasureDataWithMessage xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Corporate.Web.API.DAL">
<Message/>
<Success>true</Success>
<UnitOfMeasureBaseUnitItem i:nil="true"/>
<UnitOfMeasureBaseUnitList i:nil="true"/>
<UnitOfMeasureRelatedUnitItem i:nil="true"/>
<UnitOfMeasureRelatedUnitList i:nil="true"/>
<UnitOfMeasureSetItem i:nil="true"/>
<UnitOfMeasureSetList i:nil="true"/>
<UnitOfMeasureTypeItem i:nil="true"/>
<UnitOfMeasureTypeList i:nil="true"/>
<UsedForID>d64d99f9-acfa-44cd-a199-4557b7b20912</UsedForID>
</UnitsOfMeasure.UnitsOfMeasureDataWithMessage>
我API代码如下:
[Route("api/admin/UnitsOfMeasure/UnitOfMeasureDefaultUsedForGetID")]
[HttpGet]
[ResponseType(typeof(UnitsOfMeasure.UnitsOfMeasureDataWithMessage))]
public IHttpActionResult UnitOfMeasureDefaultUsedForGetID(string UnitOfMeasureDefaultUsedForName)
{
UnitsOfMeasure _oUnitsOfMeasure = new UnitsOfMeasure();
return Ok(_oUnitsOfMeasure.UnitsOfMeasureSet_GetUsedForID(UnitOfMeasureDefaultUsedForName));
}
我DAL应该返回一个布尔标志和一个GUID。
我的Ajax调用如下:
$.ajax({
type: "GET",
url: g_WebServiceUnitOfMeasureDefaultUsedForGetIDURL,
data: {"UnitOfMeasureDefaultUsedForName": "Purchase"},
datatype: "json",
success: function(jsonResult){
DefaultUnitUsedForID = jsonResult;
},
failure: function (xhr, textStatus, errorThrown) {
console.log(xhr);
console.log("---------------------------------------------------------------------------");
console.log(textStatus);
console.log("---------------------------------------------------------------------------");
console.log(errorThrown);
console.log("---------------------------------------------------------------------------");
},
error: function (xhr, textStatus, errorThrown) {
console.log(xhr);
console.log("---------------------------------------------------------------------------");
console.log(textStatus);
console.log("---------------------------------------------------------------------------");
console.log(errorThrown);
console.log("---------------------------------------------------------------------------");
}});
如上所述,从单步调试代码,它甚至没有进入成功或失败的功能。我究竟做错了什么?
可能是愚蠢的,但给它一拍
$.get(g_WebServiceUnitOfMeasureDefaultUsedForGetIDURL,
{"UnitOfMeasureDefaultUsedForName": "Purchase"})
.done(function(data) {
DefaultUnitUsedForID = jsonResult;
alert("Data Loaded: " + data);
});
对不起,没有运气。 –
jquery的版本是什么? –
我正在使用2.1.4 –
哪些误区控制台是否显示在Web开发人员工具中? 404? – jony89
没什么,没有错误。在调用的第一行之后,调试器完全绕过ajax调用。 –
在Chrome调试器中打开网络选项卡,并查看请求是否由浏览器发出 –