我创建了一个 jquery ajax 调用,它在 Chrome、firefox 和 IE 中运行良好。
与 Safari 一样,它在响应中给出 500 内部服务器错误。我认为这可能是由于服务器异常所致。但是当我尝试调试时,我发现它根本没有到达服务器。
The wierd thing in this is, the ajax-call works for every alternate calls. Call-1 fails and then call 2 succeeds.
我附上请求和响应的屏幕截图(成功和错误)。请帮我解决这个问题。
提前致谢,
拉加夫
var coId = globalObject.GetCompanyIdFromUrl();
if ($("#headerCompanyMenu").length > 0 && coId != "") {
var strData = "{\"coId\":\"" + coId + "\"}";
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
cache: false,
url: globalObject.rootPath + "search/webmethod.aspx/GetCoHeaderData",
data: strData,
async: true,
success: function (d) {
var coHeaderData = JSON.parse(d);
$("#lblCoNm").html(coHeaderData.lblCoNm);
$("#lbl_prim_im").html(coHeaderData.lbl_prim_im);
$("#lbl_prim_md").html(coHeaderData.lbl_prim_md);
$("#lbl_prd_own").html(coHeaderData.lbl_prd_own);
$("#lbl_geo_own").html(coHeaderData.lbl_geo_own);
$("#lbl_org_inv").html(coHeaderData.lbl_org_inv);
$("#lbl_out_inv").html(coHeaderData.lbl_out_inv);
$("#lbl_cur_val").html(coHeaderData.lbl_cur_val);
$("#lbl_nbv").html(coHeaderData.lbl_nbv);
$("#lbl_fv").html(coHeaderData.lbl_fv);
$("#lblProc").html(coHeaderData.lblProc);
$("#lblFinGrd").html(coHeaderData.lblFinGrd);
if (coHeaderData.addNewDeal == "true")
$("#lnkAddNewDeal").show();
if (coHeaderData.coDeals.length > 0) {
BindData("coDealsTmpl", coHeaderData.coDeals);
$("#coDeals").show();
}
},
error: function (error) {
//alert("Company search error");
}
});
我从 Win7 运行 safari。
实际 Mac 的 safari 加载它完全没问题。 ajax 调用没有错误。
服务器是Windows 2008,运行iis 7。没有负载平衡服务器。每次 ajax 调用都使用相同的方法、相同的输入数据并期望相同的输出数据来访问相同的服务器。