Edw*_*d M 6 ajax jquery cache-control node.js
使用下面的jQuery ajax()调用不起作用.如果我删除beforeSend参数它工作正常.根据Chrome网络检查员的说法,它不工作时的状态是"加载已取消".使用jQuery 1.7.2和1.9.1以及Chrome,Safari和Firefox进行测试.无论我输入什么参数都会失败setRequestHeader(例如"test","true"也会失败).当我beforeSend包含时,请求头中包含以下内容:Access-Control-Request-Headers:accept, cache-control, origin.如果重要,api_url则位于不同的子域,但我们在服务器上设置CORS,以便在所有其他实例中正常工作.我需要设置Cache-Control标头,以便在Send不是一个选项之前删除.
$.ajax({
url: api_url,
beforeSend : function (xhr){xhr.setRequestHeader('Cache-Control', "public");} ,
dataType: "json",
success: successCallback,
error: APIError
});
Run Code Online (Sandbox Code Playgroud)
更新:它似乎到达node.js服务器,因为它以200作为状态响应.是否可能问题是服务器如何响应标头?同样,无论我使用什么键/值参数,它都会这样做,因此它不会与缓存相关.
update2:在我的控制台中我得到"请求头字段Access-Control-Allow-Headers不允许Cache-Control".我尝试使用谷歌搜索,但不是更接近答案.似乎没有接受任何请求标头字段.这是否意味着必须将node.js配置为接受标头?
| 归档时间: |
|
| 查看次数: |
2380 次 |
| 最近记录: |