我正在尝试调用Web服务来获取一些数据。我需要在GET方法中传递此URL:
http://localhost/ecosat/ws/api.php?t=vw_motorista
但是,当我查看Chrome开发者工具时,链接是:
http://localhost/ecosat/ws/api.php?t=vw_motorista&_=1397500899753
我没有传递这个参数:&_=1397500899753
使用此附加参数,我收到500错误。我无法更改Web服务来处理此问题。
发生了什么事? Chrome是否正在更改我的代码?
这是我的Ajax
function get(pURL, pToken) {
var ret = null;
$.ajax({
type: "GET",
dataType: "json",
async: false,
timeout: globalTimeOut,
cache: false,
url: pURL,
headers: {"Token": pToken},
error: function(request, status, error) {
ret = null;
},
success: function(data) {
ret = data;
}
});
return ret;
}
答案 0 :(得分:1)
您可能在ajax查询中使用cache: false
设置。它会添加一个带有时间戳值的_
参数,以确保您的ajax调用不会被浏览器缓存。
如果您不需要,请删除此设置。但是如果你需要确保禁用缓存,你可以尝试两件事:
为查询添加带有时间戳的自己的参数,例如{ts: new Date.getTime()}
或
如果可能,将标头添加到Web服务器响应中。 See this question