我使用 apache2 作为我的解析服务器的反向代理。为了允许跨域请求,我最初尝试设置:
Header always set Access-Control-Allow-Origin "*"
在 apache 配置文件中连同:
ProxyPass /parse/ http://localhost:1337/parse/
ProxyPassReverse /parse/ http://localhost:1337/parse/
RewriteEngine On
RewriteCond %{REQUEST_METHOD} OPTIONS
RewriteRule ^(.*)$ $1 [R=200,L]
设置后,请求成功地从 apache 转发到我的解析服务器。但是现在我的 Webapp 抛出CORS Multiple Origin Not Allowed
.
在我的浏览器的开发者控制台中,我可以看到这个 Access-Control-Allow-Origin 选项设置了两次。
我已经确认第二个实例是由于解析服务器而出现的。但是,我找不到阻止 parse-server 或 apache 在响应中设置此选项的方法。
我尝试将 apache 配置中的初始行更改为:
1.
Header always setifempty Access-Control-Allow-Origin "*"
Header always add Access-Control-Allow-Origin "*"
Header always add Access-Control-Allow-Origin "*"
Header always edit Access-Control-Allow-Origin "^$" "*"
这些尝试都没有改变任何东西。但是,删除Access-Control-Allow-Origin
apache 配置中的选项会阻止初始请求通过解析服务器,因此这不是一个选项。
我正在使用 apache2 版本2.4.29
和 parse-server 4.10.3
。
有谁知道让这个工作的方法?