【发布时间】:2023-03-11 14:36:01
【问题描述】:
我正在尝试使用文章中提到的 SPA 样式使用 Flask + Vue 构建: https://testdriven.io/blog/combine-flask-vue/
使用 chrome 时,Flask 会话不是持久的 谷歌开发工具正在引发 SameSite 问题:
我尝试根据堆栈溢出中找到的信息修复它: 设置:
from flask import Flask, make_response
from flask import session
from flask_cors import CORS
from flask_session import Session
from SodukoUtils import init_board_options, find_next_move
from data.sudopy import Sudoku
app = Flask(__name__)
SESSION_TYPE = 'filesystem'
app.secret_key = b'abjdslgjl'
app.config.from_object(__name__)
CORS(app, supports_credentials=True)
Session(app)
app.config.update(
SESSION_COOKIE_SECURE=True,
SESSION_COOKIE_HTTPONLY=True,
SESSION_COOKIE_SAMESITE='None',
)
但是,当我使用 chrome 浏览器时,问题仍然存在。 当我使用 Mozilla 浏览器时,烧瓶会话工作正常。
在 Vue 中,我使用 fetch 通过将模式设置为“cors”并将凭据设置为“包含”来发送 http 请求 例如:
fetch(url, {
mode: 'cors',
credentials: 'include',
})
github 仓库link
【问题讨论】:
-
你的测试代码有什么仓库吗?
-
@TarunLalwani 我添加了详细信息github.com/idannik/Flask_Sudoku
标签: vue.js cookies cross-domain samesite