php has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status.
时间: 2024-08-01 12:01:27 浏览: 106
vue解决跨域路由冲突问题思路解析
当PHP应用程序通过跨域资源共享(CORS)策略尝试访问其他域名下的资源时,可能会遇到"Access-Control-Allow-Origin: * (预检请求未通过访问控制检查:响应状态不是HTTP OK)"这样的错误。这是因为浏览器为了安全原因,会先发送一个"OPTIONS"请求(称为预flight请求),服务器需要在这个预检请求上设置`Access-Control-Allow-Origin`头,允许指定的源发起实际的请求。
如果服务器响应中缺少`HTTP ok status`(通常是200状态码),或者`Access-Control-Allow-Origin`设置得不正确,这会导致预flight请求失败,从而阻止后续的实际请求。解决这个问题通常需要服务器端配置正确的CORS策略,明确允许哪些来源访问,并确保返回正确的HTTP状态码。如果你是在后端处理,你需要检查你的API设置,如果是前端,可能需要调整fetch或axios等库的相关选项。
阅读全文