我是这样遇到这个问题的。
首先在点击登录时,使用(this.$http.post)请求后台php,php这边是要将通过sql查询得到的uid保存到session里的,结果发现只在session中存储了瞬间,后面直接释放了。
WHY?
于是百度解决方案。
首先,在php中加了几个请求头。
header('Access-Control-Allow-Origin:http://localhost:8080');
Header('Access-Control-Allow-Headers:Content-Type');
header('Access-Control-Allow-Credentials:true');//是否支持cookie跨域结果发现还是不对,于是在客户端的this.$http.post加了这样的配置
this.$http.post('http://localhost/wyyx/user.php',
{uname:this.uname,upwd:this.upwd},{emulateJSON:true,withCredentials:true})发现就可以了。
需要注意的,this.$http.post中只能放置三个参数,可以console.log查看验证,我后面出现错误就是因为把上面配置项中的两项拆来写,所以还是不对。
三个参数:第一个为url,第二个为body(也就是要传递的数据),第三个为options(可选配置项)。

本文介绍了解决PHP会话在跨域请求下瞬时释放的问题,通过正确设置跨域请求头并配置客户端的HTTP请求参数实现持久化会话。
3950

被折叠的 条评论
为什么被折叠?



