我对编码很新,目前正在学习Devise / Omniauth。我正在制作一个教程,让用户通过Omniauth与Facebook连接作为示例,但在控制台中出现以下错误:
XMLHttpRequest cannot load https://www.facebook.com/dialog/oauth?client_id=... No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access.
据我所知,出于安全考虑,某些浏览器不允许使用CORS请求。我确实在StackOverflow上找到了很多相关主题(link1,link2,link3,link4,link5),主要是允许
Access-Control-Allow-Origin: *
我试过了,无法让它发挥作用。因为我使用了ruby,我还发现有一个名为(Rack-Cors)的宝石允许使用ruby进行CORS请求,并且自己想一想"很酷,我已经保存了" ;但我也无法让它发挥作用。
用完选项,因为我正在运行Chrome,我也尝试以这种方式打开Chrome
open /Applications/Google\ Chrome.app --args --disable-web-security
它也没有用。我在过去几天尝试了不同的东西,无法让Omniauth Facebook登录工作(PS:我允许在我的应用程序的Facebook开发人员设置页面访问http://localhost:3000/)
请在Github上找到我的存储库的链接: repository
我做错了什么?是否有一些特定的方法来设置我错过的CORS?如果有人可以帮助或知道如何使用ruby / chrome,那将非常感激。感谢。