金丝雀——禁用web安全不';AngularJS项目中的ajax请求不再适用

金丝雀——禁用web安全不';AngularJS项目中的ajax请求不再适用,ajax,angularjs,security,google-chrome,cross-domain,Ajax,Angularjs,Security,Google Chrome,Cross Domain,以参数开头的金丝雀——禁用web安全性不再有助于在localhost上开发时发送跨域AJAX请求 我在控制台中看到一条消息 XMLHttpRequest cannot load http://[some-domain-name].com. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3100' is therefore not al

以参数开头的金丝雀——禁用web安全性不再有助于在localhost上开发时发送跨域AJAX请求

我在控制台中看到一条消息

XMLHttpRequest cannot load http://[some-domain-name].com. 
No 'Access-Control-Allow-Origin' header is present on the requested resource. 
Origin 'http://localhost:3100' is therefore not allowed access.
如何在AngularJS项目中为ajax请求设置标头

另外,我使用别名以所需参数开头canary

alias canary="open -a \"Google Chrome Canary\" --args --disable-web-security"

尝试关闭浏览器,然后用特殊参数再次打开它

金丝雀经常被更新,当您接受更新它时,它会在没有特殊参数的情况下重新启动

编辑

工作解决方案:使用命令
open-a Google\Chrome\Canary--args--disable web security--user data dir=$HOME/profile folder name

说明:
--disable web security
现在需要使用
--user data dir
标志

Windows命令:
“C:\Program Files(x86)\Google\Chrome\Application\Chrome.exe”--禁用web安全--用户数据目录=%USERPROFILE%\profile文件夹名称


这似乎只是金丝雀中的一个bug(在最新的stable Chrome中可以正常工作)。Chrome看到该标志并显示警告,但不允许跨域请求。几天前它确实起作用了


我报告了这个问题:

如果它处于开发模式,你能不能在服务器端不允许“访问控制允许源代码”?谢谢你的提问@user013948@SergeSeletskyy嗨,有没有办法为狩猎制作同样的东西?我找不到。嗨@baxxabit。这是一个好问题。不幸的是,我没有答案,只能坚持Chrome开发。@SergeSeletskyy,别无选择。我们使用代理服务器来禁用Cors--user data dir的值应该是
-user data dir=$HOME/Library/Application\Support/Google/Chrome\Canary/
@davidcondrey我想你可以使用任何你想要的目录。我个人更喜欢为此创建一个特定的文件夹,而不是使用应用程序本身的路径(这可能会在将来导致问题)。我只是注意到,当我运行该命令时,它创建了与应用程序支持目录中已存在的目录结构相同的目录结构。您能否帮助如何使用命令“打开…”,我在Windows中使用Chrome7@khoailang我用在Windows上运行的命令编辑了我的答案。