我使用CORS将数据发送到我的服务器,该服务器位于另一个域中。
浏览器发送第一个检查服务器的请求(预检),然后发送主请求。我想知道请求何时被预检",所以我可以更快地返回标题。
我想要这样的事情:
if (isPreflight) {
header('Access-Control-Allow-Origin: *');
exit;
} else {
// handle the main request
}
答案 0 :(得分:0)
找到了一种方法。
只需将CORS标题放在"处理数据方法之前"如果请求方法是OPTIONS(这是默认的预检方法),退出脚本,如果它是可接受的方法之一(GET,POST或其他任何方法),则处理数据。
header('Access-Control-Allow-Origin: *');
if ($_SERVER['REQUEST_METHOD'] == "OPTIONS") {
exit;
} else {
/*handle data*/
}