Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
513 views
in Technique[技术] by (71.8m points)

跨域ajax请求无法带上目标域已存在的cookie?

下面是旧问题作废,之所以不删除是想说明一下问这个问题的前提原因。

**目前情况是前后端分离,且后端API和前端不在同一个域的情况下,如果浏览器不手动访问一次后端,那么每次前端发起的ajax请求都会导致后端重新向后端API所在域设置一个新的cookie,导致session无法正常使用

请问一下现在做身份验证的话,除了像传统app一样在登录的时候发送一个access_token并存储在前端的状态管理器(比如说redux,vuex),然后后续每次请求带上这个access_token以外,就没有其他办法能够使用session做身份验证了吗?(希望大家能够给一个优雅的最佳实践)**

图片描述
图片描述

问题好像发现了:如图所示,我本地明明已经有一个laravel_session的cookie,但是每次请求,还是重新给我set了一个cookie,说明axios发起跨域请求的时候,没有带上目标域下已经存在的cookie,现在感觉问题应该是出在axios把



下面是旧问题作废:

图片描述

15行将cw这个session存储,但是在34行访问结果只有一个

array (size=1)
  '_token' => string 'VXgVeooqOLPi5XYHYFZY0m1pDaqCySKzuYVe34EW' (length=40)

这是为什么?

我是Laravel5.3版本,已经正确按照https://segmentfault.com/q/10...方法试过了(路由增加web中间件),均无效


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

感谢邀请,但是我也没什么这方面的经验,检索了一下,你看是不是这种情况

https://segmentfault.com/q/10...

或者 下面这种实现可不可行?

http://stackoverflow.com/ques...


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...