我已经尝试了stackoverflow.com上几乎所有可用的解决方案,但是它们似乎都不适合我的用例。
我正在开发一个简单的API(在PHP中),该API使用基于令牌的身份验证系统(使用JWT)。 然后,我通过Axios和Vue使用该API。
每次我在设置了Authorization标头的情况下发出请求时,都会收到以下响应:
OPTIONS http://localhost/api/album/ 400 (Bad Request)
Access to XMLHttpRequest at 'http://localhost/api/album/' from
origin 'http://localhost:8082' has been blocked by CORS policy:
Response to preflight request doesn't pass access control check:
It does not have HTTP ok status.
我尝试按照其他答案中所述设置适当的标题。
我在.htaccess
中有这两行(到目前为止):
Header always set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Methods "POST, GET, OPTIONS, PUT, DELETE"
我尝试使用PHP的header()设置上述标题。
什么都没有。
到目前为止,我正在index.php
中使用此代码块来处理此错误。
if($request_method == 'OPTIONS'){
http_response_code(200);
return;
}
这是合适的解决方案吗?这是我第一次听说CORS。任何帮助都会很棒:)
谢谢。