我们使用axios通过promise进行ajax调用。我们有错误:
无法加载xxx:CORS策略已阻止从xxx重定向到yyyy:所请求的资源上没有“ Access-Control-Allow-Origin”标头。因此,不允许访问原始xxxx。
我们的xxxx域是vue Js应用程序,而YYYY是基本的codeginiter V3框架。
我们不得不使用主控制器:header('Access-Control-Allow-Origin:xxx');
但是那似乎不起作用!
我们已经尝试了所有有关标头的方法...使用标头('Access-Control-Allow-Origin:*),利用codeigniter的$ this-> output-> set_header,将标头放入index.php,制作Ajax没有Axios,只有XMLHttpRequest,什么都不做!
我们最终使用了一个技巧来调用我们的外部网址:
var script = document.createElement('script');
script.src = yyyy;
document.getElementsByTagName('body')[0].appendChild(script);
但这不是最干净的方法。
我想知道每个人是否都面临着表面问题,以及他如何解决这一问题。
谢谢大家!
凯文
答案 0 :(得分:0)
也许关于Web服务器设置。像.htaccess一样: 标头将X-Permitted-Cross-Domain-Policies设置为“无”吗?
答案 1 :(得分:0)
Re:
我们找到了问题所在。如果存在重定向,则Codeigniter Logique不起作用。如果要使其工作,则必须使最简单的控制器成为可能。
其他错误,我们将此URL称为:http://xxxx/disconnect/而不是http://yyyy/disconnect(无斜杠)
其他要注意的是,导航器相同以保存呼叫的缓存。如果要查看修改,请清除缓存。
祝你好日子:)!
凯文