Flask和vue的cookie传递爬坑之旅

跳坑经过

  • 前面的界面和后端编写很顺利

  • 到了session保持这里出现了问题,和网上的教程一样,但是为什么我的session没办法传递变量呢

  • 起初一直怀疑是我的后端配置少了什么东西,问群里大佬,各种百度,发现网上的demo如果不结合前端,独立运行都是可以实现的

  • 经过2天的奋斗,发现了redis(ps:我的session是放到redis中的)中每次请求都会生成一次session

  • 然后我使用jmeter,模拟请求并保存cookie,神奇的发现什么问题都没有,redis正常了,session的传递也正常了

  • 到了这里定位到了问题在于cookie的传递(本地没有存储cookie)

  • 百度如何跨域请求传递cookie,引入axios时,加上一句代码

     import axios from 'axios'
     axios.defaults.withCredentials = true
    
  • 问题解决了,但是我用的是localhost(如果项目都布在一台机器的话,已经可以实现了)

  • 旁边的大佬告诉我,如果是不同域名的话,还是会有问题,换成ip访问果然又获取不到session

  • 大佬给的思路,后端读取加密的session ->>传递给前端,前端接收之后存到Local Storage 或者 Sission Storage中,继续去百度后端如何读取session,解决之后再来更新

后续补充

  • 前面说到用sessionstorage存储session,很长一段时间确实没什么问题,直到我往session中放了一个变量之后,开始出现问题,有时候还是会生成一个新的session,导致获取不到里面的变量
  • 目前我是在登录的时候手动设置set-cookie和过期时间,基本解决了问题,但是没明白原理,有路过的大佬可以指点一下
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值