早先只在文件开头设置了
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字段是必须的。它也是一个逗号分开的字符串,表明服务器支撑的一切头信息字段,不限于浏览器在"预检"中要求的字段。
然后看了要求头中确切 包含Access-Control-Request-Headers
然后胜利返回接口信息
以上就是PHP 服务器端处置惩罚跨域问题的细致内容,更多请关注ki4网别的相干文章!