最近在做一个前后端分离的项目,前端vue后端flask。在写登录接口的时候,想在flask使用session。但是前端登录之后接口正常响应了,结果在浏览器无法查看到session保存,猜测应该是前后端分离开发导致的,请问如何解决这种问题呢?
4条回答 默认 最新
关注 让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
问题描述:前端vue后端flask项目中,想使用session实现登录功能,但是在浏览器中无法查看到session。 解决方案:前后端分离开发中,由于不同域名/端口的限制,前端无法直接访问后端设置的session,需要进行跨域处理。具体实现可以通过设置Access-Control-Allow-Credentials和Access-Control-Allow-Origin来允许跨域请求,并且在请求中设置withCredentials为true来开启跨域传递cookie。 具体代码实现: 后端Flask代码:from flask import Flask, session app = Flask(__name__) # 设置session的密钥 app.secret_key = 'hello world' @app.route('/login') def login(): # 登录成功后设置session session['username'] = 'user' session['password'] = 'password' return 'login success'
前端Vue代码:
axios.defaults.withCredentials = true axios.get('http://localhost:5000/login').then(response => { console.log(response.data) })
需要注意的是,在Vue项目中要设置axios的withCredentials为true,表示开启跨域传递cookie。同时,在后端Flask中,要设置session的密钥,并且同时设置Access-Control-Allow-Credentials和Access-Control-Allow-Origin。 参考链接:解决Flask无法在前端保存session问题
解决 无用评论 打赏 举报
悬赏问题
- ¥15 有人会用py或者r画这种图吗
- ¥15 MOD04_3K图像预处理
- ¥15 [VASP]关于超胞大小和k 点网格的收敛性测试
- ¥15 pip下载paddle2onnx离谱错误
- ¥60 db2move nlzxams import 导出db2备份数据报错
- ¥15 关于#python#的问题:全文总结功能咨询
- ¥15 俄罗斯方块中无法同时消除多个满行
- ¥15 c#转安卓 java html
- ¥15 使用gojs3.0,如何在nodeDataArray设置好text的位置,再go.TextBlock alignment中进行相应的改变
- ¥15 psfusion图像融合指标很低