我想从客户端Javascript到Apache SVN端点发出XmlHttp GET请求,我面临以下错误:
无法加载http://IP_ADDRESS/svn/:对预检请求的响应未通过访问控制检查:请求的资源上没有“Access-Control-Allow-Origin”标头。因此,'http://IP_ADDRESS:3000'原产地不允许进入。
我已经尝试在以下文件中设置Header set Access-Control-Allow-Origin "*"
并且到目前为止没有成功。
/etc/apache2/mods-available/dav_svn.conf
(配置在此文件中).htaccess
(在端点根文件夹内)我已经没有了想法怎么做。
Javascript请求代码:
var xmlhttp = new XMLHttpRequest();
// encodedData = ...
xmlhttp.open('GET', url, true);
xmlhttp.setRequestHeader("Authorization", "Basic " + encodedData);
xmlhttp.withCredentials = true;
xmlhttp.send();
我究竟做错了什么?
您是否尝试过添加客户端的地址而不是*?
Header set Access-Control-Allow-Origin "http://IP_ADDRESS:3000"
此外,如果它不起作用,我建议添加这些其他选项:
Header set Access-Control-Allow-Credentials "true"
Header set Access-Control-Allow-Methods "POST,GET,OPTIONS,PUT,DELETE"
Header set Access-Control-Allow-Headers "Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With"