首页 > 开发 > 前端 > 正文

解决POST跨域请求时浏览器发送两次请求

2017-02-19 21:41:14  来源: 网友分享

浏览器的 CORS在 PUT、DELETE 等这些特殊方法下自动发起的 OPTIONS 不吃 Cache-Control 的限制,即使设置了缓存,跨域POST请求时仍会每次先发送OPTION请求,即每次POST初始要进行两次请求,但 CORS 有 Access-Control-Max-Age 确实可以用于 CORS 相关配置的缓存。

php代码实现如下

<?php
header('Access-Control-Allow-Origin: http://localhost');
header('Access-Control-Allow-Methods: DELETE');
header('Access-Control-Max-Age: 3600');//设置一个足够长的时间,可避免跨域POST时的OPTIONS
?>