我有一个 Meteor 应用程序,它允许用户通过 meteor 的 accounts-facebook
包通过 facebook oauth 注册。我已经设置了所有必要的包和 UI,并使用 mLab 数据库(沙箱)在 Heroku(免费计划)上部署了应用程序。我已经设置了 facebook 应用程序和身份验证,并且登录对我来说工作正常。我已经多次成功通过我的 facebook 在该应用程序上注册。
然而,当我居住在香港(我在印度)的一位开发人员试图做同样的事情时,该应用程序不会注册他,弹出浏览器在他允许后在控制台中打印此错误访问他的公开资料 -
DOMException:阻止来源为“https://myapp.herokuapp.com”的框架访问跨域框架。
这个错误似乎来自 oauth
包中的 end_of_popup_response.js:18
。
此错误是否有任何特定的可修复原因?
最佳答案
在 JavaScript 中有一个名为同源的策略。 根据该策略,如果您想访问一个框架,协议(protocol)、主机名和端口必须与您的域相同。
阅读一些例子: SecurityError: Blocked a frame with origin from accessing a cross-origin frame
关于Facebook 登录在香港不起作用,但对我有用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51060926/