如何解决JS(Jquery) 和 PHP Etag 在 Apache 上不起作用
我试图了解它是如何工作的很长一段时间。
浏览器 Chrome。阿帕奇。
我创建了 js 和 PHP 代码,但它不起作用。 据我了解,第一次 - 用 js 发送请求到 PHP,第二次 - PHP 将 etag 添加到标题,第三次 - 刷新后 js 在标题中发送 if-none-match
JS(JQuery):
$.ajax({
async:false,type: "POST",ifModified: true,url: 'trackETAG.PHP',withCredentials:true,data: { track: true},success: function (data){
newData = data;
},complete: function(XMLHttpRequest,textStatus){
var eTag = XMLHttpRequest.getAllResponseHeaders();
var newEtag = eTag;
}
});
PHP:
<?PHP
if(!empty(isset($_POST["track"]))){
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET,POST');
header("Access-Control-Allow-Headers: Origin,X-Requested-With,Content-Type,Accept,Etag,if-none-match");
header("Cache-Control: must-revalidate,post-check=0,pre-check=0");
header("Etag: 123");
$temp = null;
$zte = null;
$temp = trim($_SERVER['HTTP_IF_NONE_MATCH']);
$zte = $temp;
}
?>
HTTP_IF_NONE_MATCH 始终为空。
有人可以帮助我吗?
解决方法
请求类型有问题。 Etag 仅适用于我的程序中的 GET
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。