Google+登录-未捕获的安全错误
Google+ Sign-In - Uncaught SecurityError
我正在实现Google+ Sign-In的混合/一次性认证代码流,并在登录提示和授予应用程序权限后在Chrome的JS控制台遇到此错误,大概是当Google的代码试图回调按钮时:
Uncaught SecurityError: Blocked a frame with origin "https://ww2.fa.org" from accessing a frame with origin "https://accounts.google.com". Protocols, domains, and ports must match.
这在Safari或IE中似乎不会发生,在Firefox中有时会发生类似的权限错误,但在Chrome中更容易重复。使用登录按钮刷新框架(在遵循google端提示之后)通常会导致刷新的按钮"知道"登录成功(调用成功处理程序)…应该总是不需要刷新就可以工作,但是没有。
任何想法吗?登录是在https://ww2.fa.org/gauth/,它只要求电子邮件范围,如果你倾向于采取一看!
我摆脱这个错误信息的方式是在API &下的Cloud Developers Console中的OAuth客户端设置中将https://accounts.google.com
添加到AUTHORIZED JAVASCRIPT ORIGINS
;auth ->凭据。
这实际上并没有解决它,当我切换到使用gapi.auth.signIn
而不是gapi.login.render
时,问题再次出现。在这篇文章的评论中描述的问题是authResult
的g-oauth-window
属性在发送到后端时的序列化。删除该参数或只发送您需要的属性为我修复它。
var signInCallback = function(authResult) {
delete authResult['g-oauth-window'];
ajaxCallToBackend(authResult);
};
如果您得到相同的错误,并且上面的方法由Adam发布不适合您(它不适合我)尝试下面的方法。
我通过禁用我安装的任何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扩展和消除任何你怀疑修改页面。
- addthis:addthis实用程序框架的JS安全错误
- 尝试getUrl图像时,Firefox WebExtension出现安全错误
- 每当我试图将简单的图像源转换为数据URL时,就会出现安全错误异常
- IE在画布上调用toDataUrl时引发安全错误
- 纹理未加载;浏览器报告同源安全错误
- 未捕获的安全错误:阻止了具有原点的帧 ..从访问具有原点的帧
- 如何调试安全错误:阻止具有原点的帧访问跨源帧
- JavaScript:由于安全错误,无法获取图像数据
- 尝试使用 openDialog() 时出现安全错误
- Firefox 在这个简单的枚举上抛出安全错误 1000
- 三.js Chrome 中画布图像上的安全错误
- 谷歌的验证码在我的SPA中成功验证后给出“未捕获的安全错误”
- 在火狐浏览器中禁用 cookie 后,访问本地存储会导致安全错误
- Firefox 安全错误:“操作不安全
- Backbone.history.start导致安全错误18
- canvas.toDataURL() 和 drawImage() 的安全错误
- HTML5-当图像数据从带有本地图像的画布中获取时出现安全错误
- SVG将画布IE安全错误保存到DataURL
- FCKeditor JavaScript API抛出“安全错误”;代码:“1000”;当我尝试SetHTML()
- 同源图像texImage2D的安全错误