微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP 服务器端处理跨域问题

相关推荐:《PHP教程

起初只在文件开头设置了

header('Access-Control-Allow-Origin:*');

然后报错

Request header field X-Requested-With is not allowed by Access-Control-Allow-Headers in preflight response.

解决方法

文件开头设置

header('Access-Control-Allow-Origin:*');
header('Access-Control-Allow-Methods:OPTIONS, GET, POST'); // 允许option,get,post请求
header('Access-Control-Allow-Headers:x-requested-with'); // 允许x-requested-with请求头
后成功

其中比较疑惑的是 Access-Control-Allow-Headers 的设置。 看了 这篇文档 后理解了

如果浏览器请求包括Access-Control-Request-Headers字段,则Access-Control-Allow-Headers字段是必需的。它也是一个逗号分隔的字符串,表明服务器支持的所有头信息字段,不限于浏览器在预检中请求的字段。

179d6b2f38d48028f4d72bbdb95fa29.png

然后看了请求头中确实 包括Access-Control-Request-Headers

然后成功返回接口信息

349e0f10334fda327f1f5b453cc6232.png

1a0ce268008a5bb47c28df38cafc690.png

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐