禁用 3rd 方 cookie 时,Google 登录不会执行任何操作

Posted

技术标签:

【中文标题】禁用 3rd 方 cookie 时,Google 登录不会执行任何操作【英文标题】:Google Sign-in does nothing when 3rd party cookies are disabled 【发布时间】:2016-01-11 09:22:26 【问题描述】:

我在我的网页上使用 Google 登录 javascript 库,该库在 Google App Engine 上的 Python 上运行。一切正常,除非用户禁用了 3rd 方 cookie(在 Chrome 中)。注册确实会打开帐户选择器(如果适用)并请求权限,但之后没有任何反应。

在桌面上它返回到注册页面并在控制台中显示以下错误:

Failed to read the 'sessionStorage' property from 'Window': Access is denied for this document.

但是我无法检测到这个错误,所以我也无法响应它。在移动设备上,它只是卡在白页上。这里的另一个问题是,由于我要求离线访问,所以第一次注册会返回一个 refresh_token。由于此错误,我从未收到此 refresh_token。

当我加载页面时,上面提到的错误会立即显示。我想检测到这一点,以便我决定不显示该按钮并要求用户启用 3rd 方 cookie。

【问题讨论】:

让我真正担心的是,没有人会重现这个强大的错误。我是唯一一个禁用 3d 派对 cookie 的人吗? 这么低的票数。也许我们错误地配置了一些东西来解决这个错误? bugs.chromium.org/p/chromium/issues/detail?id=357625 似乎相关。 【参考方案1】:

您可以测试第三方 cookie 是否被您自己禁用,而不是依赖 Google Signin 库,例如:http://blog.jgc.org/2006/04/do-you-have-third-party-cookies.html

【讨论】:

同意,我正在检查是否启用了 3d 派对 cookie,如果没有则显示警告。【参考方案2】:

改用 Python 后端集成来解决这个问题。

【讨论】:

您能解释一下您是如何解决这个问题的吗?我也一样。 我们现在使用的是 Python 集成而不是 Javascript 集成,它是后端,因此没有这个问题。

以上是关于禁用 3rd 方 cookie 时,Google 登录不会执行任何操作的主要内容,如果未能解决你的问题,请参考以下文章

从 Angular 服务访问 3rd 方 JS 功能

CodeIgniter 身份验证系统允许 3rd 方身份验证?

没有第三方 cookie 的跨域用户跟踪?

例外:不支持此浏览器,或者可能会禁用第 3 方 cookie 和数据

将 catel 与 3rd 方控件一起使用

使用 3rd 方 DLL 部署 WPF 应用程序