我已按照google + api的guidelines在我的网络应用中添加了一个登录按钮。它适用于Firefox但不适用于Chrome:我收到同样的原始错误:
Blocked a frame with origin "https://apis.google.com" from accessing a frame with origin "https://mysite.com".
我已在https://console.developers.google.com中声明https://mysite.com
为“javascript”来源。
我不明白,这是他们的浏览器而且我的api不能用它... 你能帮我解决Chrome的这个跨域问题吗?
答案 0 :(得分:1)
(这更多的是评论而不是完整的答案,但我没有足够的声誉来发表评论。)
我在python示例应用程序说明后遇到了同样的问题:https://developers.google.com/+/quickstart/python
我运行了几个可以修改页面内容的Chrome扩展程序:JSONView和StayFocusd。禁用这些扩展并再次尝试后,它对我有用。现在,即使重新启用了扩展程序,我也似乎无法重现问题。
似乎值得一试?
答案 1 :(得分:0)
我通过禁用已安装的任何Chrome扩展程序来解决问题,这些扩展程序读取并更改呈现的HTML以及重写页眉并向页面注入一种JavaScript的内容。
一个这样的扩展(导致我Blocked a frame with origin "https://apis.google.com" from accessing a frame with origin "https://example.com
错误的扩展名)是Ripple Emulator(Beta)0.9.15
基于浏览器的html5移动应用程序开发和测试工具,可以在您访问的网站上读取和更改您的所有数据"正如它在扩展权限细节中所述。
我禁用的另一个此类扩展是ModHeader 1.2.4修改请求标题,这也是"读取并更改您访问的网站上的所有数据"。
只需查看您的Chrome扩展程序,即可删除任何可疑的修改页面。