Google chrome chrome阻止Cookie,即使使用samesite=None

Google chrome chrome阻止Cookie,即使使用samesite=None,google-chrome,flask,cookies,samesite,Google Chrome,Flask,Cookies,Samesite,我在heroku中有一个flask应用程序,作为iframe嵌入到我的一个网站中。 假设a.com将此.com呈现为一个iframe。 当用户访问a.com时,将呈现.com,并创建会话 from flask import session, make_response @app.route("/") def index(): session['foo'] = 'bar' response = make_response("setting cooki

我在heroku中有一个flask应用程序,作为iframe嵌入到我的一个网站中。 假设
a.com
将此
.com
呈现为一个iframe。 当用户访问
a.com
时,将呈现
.com
,并创建会话

from flask import session, make_response

@app.route("/")
def index():
    session['foo'] = 'bar'
    response = make_response("setting cookie")
    response.headers.add('Set-Cookie', 'cross-site-cookie=bar; SameSite=None; Secure')
    return response
在Chrome开发工具中,我看到cookie被阻止。不过在firefox中效果很好。 我是否正确设置了cookie?
我理解这是由于chrome80更新,但不确定解决方法。

您可以通过检查测试站点,检查浏览器是否按预期处理cookie

如果所有行都包含绿色复选框(✔️) 然后,cookie可能存在某种问题,我建议检查DevTools中的“问题”选项卡和“网络”选项卡,以确认
set cookie
标题肯定包含它应该包含的内容


如果有红色或橙色的十字架(✘) 在测试站点上,浏览器中的某些内容正在影响cookies。请检查您是否正在阻止第三方cookies(
chrome://settings/cookies
)或运行可能执行类似操作的扩展。

您可以检查浏览器是否按预期处理cookie,方法是检查以下位置的测试站点:

如果所有行都包含绿色复选框(✔️) 然后,cookie可能存在某种问题,我建议检查DevTools中的“问题”选项卡和“网络”选项卡,以确认
set cookie
标题肯定包含它应该包含的内容


如果有红色或橙色的十字架(✘) 在测试站点上,浏览器中的某些内容正在影响cookies。请检查您是否正在阻止第三方cookies(
chrome://settings/cookies
)或运行可能执行类似操作的扩展。

将会话cookie中的
samesite
属性设置为
None
似乎解决了问题

Had必须更新werkzeug(由flask包装的WSGI web应用程序库)并更新会话cookie。 i、 e

但是,这也取决于用户在chrome://settings/cookies"

如果选择以下选项之一,即使
samesite
设置为无,Chrome也会阻止会话cookie

  • 阻止第三方cookie
  • 阻止所有cookies
  • 在匿名模式下阻止第三方Cookie(在匿名模式下阻止)

将会话cookie中的
samesite
属性设置为
None
似乎解决了问题

Had必须更新werkzeug(由flask包装的WSGI web应用程序库)并更新会话cookie。 i、 e

但是,这也取决于用户在chrome://settings/cookies"

如果选择以下选项之一,即使
samesite
设置为无,Chrome也会阻止会话cookie

  • 阻止第三方cookie
  • 阻止所有cookies
  • 在匿名模式下阻止第三方Cookie(在匿名模式下阻止)
app.config['SESSION_COOKIE_SAMESITE'] = 'None'
app.config['SESSION_COOKIE_SECURE'] = True