Mur*_*i K 0 cookies google-chrome flask samesite
我有一个托管在 Heroku 中的 Flask 应用程序,作为 iframe 嵌入到我的网站之一。假设a.com
将其呈现<heroku_url>.com
为 iframe。当用户访问 时a.com
,<heroku_url>.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
Run Code Online (Sandbox Code Playgroud)
在 Chrome 开发工具中,我看到 cookie 被阻止。不过在 Firefox 中运行良好。我是否正确设置了 cookie?我知道这是由于 chrome80 更新造成的,但不确定解决方法
samesite
将会话cookie中的属性设置为None
似乎已经解决了问题。
必须更新werkzeug
(由 Flask 包装的 WSGI Web 应用程序库)并更新会话 cookie。IE
app.config['SESSION_COOKIE_SAMESITE'] = 'None'
app.config['SESSION_COOKIE_SECURE'] = True
Run Code Online (Sandbox Code Playgroud)
然而,这也取决于用户在“chrome://settings/cookies”中的偏好。
samesite
如果选择以下选项之一,即使设置为“无”,Chrome 也会阻止会话 cookie
归档时间: |
|
查看次数: |
8423 次 |
最近记录: |