0

我正在尝试下一步执行:

$.ajax({
type: 'GET',
url: 'http://127.0.0.1:6789/dir', 
data: "",   
success: function(data) { /*do something*/ },
dataType: 'html'
});

但是当它执行时,我的服务器会收到如下内容:

http://127.0.0.1:6789/dir?_32567871112

我不想传递任何参数。我错了什么?

4

3 回答 3

1

检查jQuery.ajax文档

如果您查看缓存参数,您可以看到它在调用结束时以该格式添加时间戳。如果您想摆脱它,请尝试将缓存设置为 true,或键入 POST(以防您不想允许兑现)

于 2012-05-03T04:44:57.990 回答
1

简而言之,在您的通话选项中设置cache为。true$.ajax

jQuery 添加了缓存中断。

jQuery 中有一个选项可以关闭它:(来自http://api.jquery.com/jQuery.ajax/

cache

默认值:truefalse对于数据类型“脚本”和“jsonp”

如果设置为false,它将强制浏览器不缓存请求的页面。将缓存设置为false还会将查询字符串参数“_=[TIMESTAMP]”附加到 URL。

cache设置为的示例true

$.ajax({
  type: 'GET',
  cache: true,
  url: 'http://127.0.0.1:6789/dir',
  data: "",
  success: function (data) { /*do something*/
  },
  dataType: 'html'
});
于 2012-05-03T04:45:29.917 回答
1

我的代码中有 ajaxSetup 属性:

$.ajaxSetup({ cache: false });

我评论了它,它现在可以工作了!谢谢。

于 2012-05-03T04:46:34.807 回答