【发布时间】:2019-03-31 10:13:39
【问题描述】:
当我打开开发工具来监控 API 调用时,我们的应用程序中的 jQuery Ajax 调用失败。收到 500 内部错误。
如果我关闭开发工具窗口,它工作正常。
这发生在生产服务器上。在我的本地服务器中,这两种方式都可以正常工作。
我尝试通过启动 java profiler 在 chrome 中记录它正在工作。一旦我停止它就不起作用了。
当我阅读服务器日志时,它正在尝试验证令牌不匹配的 CSRF 令牌。它正在抛出异常。但是,为什么只有在打开调试窗口时才会发生此错误的困惑。
我的 Ajax 调用代码如下:
jQuery.ax=function(url, data, async, type, dataType, successfn, errorfn) {
async = (async==null || async=="" || typeof(async)=="undefined")? "true" : async;
type = (type==null || type=="" || typeof(type)=="undefined")? "post" : type;
dataType = (dataType==null || dataType=="" || typeof(dataType)=="undefined")? "json" : dataType;
data = (data==null || data=="" || typeof(data)=="undefined")? {"date": new Date().getTime()} : data;
data.avoidCacheDate = new Date().getTime();
data.AJAXREQUEST = true;
$.ajax({
type: type,
beforeSend: function (request){
getToken(request);
},
async: async,
data: data,
url: url,
dataType: dataType,
success: function(d){
successfn(d);
},
error: function(e){
errorfn(e);
}
});
};
【问题讨论】:
-
我们很难说出原因。那么生产服务器上的错误是什么?你看过日志吗?
-
生产服务器是指你问ryt的中间件日志..
标签: javascript java jquery user-interface