请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

在子页面无法清除掉cookie

 助一个问题,困扰我两天了。我js设置了cookie,用来保存用户的名字。在任何子页面读取cookie都没问题,但是在登出的时候遇到一个问题,就是只能在根目录下面登出,不能在子页面登出。

这是设置cookie的函数

https://img1.sycdn.imooc.com//szimg/5a5702580001f14a07230255.jpg

这是清除cookie的函数

https://img1.sycdn.imooc.com//szimg/5a5702580001690006880123.jpg

这是我的路由设置

https://img1.sycdn.imooc.com//szimg/5a570258000106c104310280.jpg

希望得到指点。感谢感谢!

正在回答 回答被采纳积分+3

插入代码

1回答

fishenal 2018-01-15 21:14:39

要看你登出的代码写在哪里了,执行了没有设断点找一找。


奇怪的是用户名为什么要写在cookie里?不知道你是跟后端怎么约定的。cookie的信息很不稳定啊。


我理解正确的做法应该是,登录发送登录请求,后端验证登录成功之后,向客户端写一个cookie,cookie是后端直接写的,不是前端写的,这样感觉也不是很安全。至于用户名这种信息,肯定是后端返回给你的,也不用你保存,因为每一个需要登录的页面前端其实都需要验证登录状态,否则用户直接访问怎么办,你怎么知道用户访问的是哪个页面啊。

登出也是一样,向后端发送登出请求,让后端清掉埋在客户端的cookie,登录状态清空。

每个需要登录的页面,都要执行一遍登录状态的检查,同时拿到用户信息。


另外,如果你非要在不同页面记录什么内容,直接用localstorage呗,cookie限制那么多。


0 回复 有任何疑惑可以回复我~
  • 提问者 似水夕阳 #1
    非常感谢老师的回复,因为我是新手,刚看了您的vue课程,就着手实现了一下,在写到登陆和登出模块的时候,比较疑惑怎么在不同页面检查登陆状态,就用cookie 试着写了一下。看了老师的回复之后,才知道cookie 原来是后端同学来完成的。-_-|| 
    回复 有任何疑惑可以回复我~ 2018-01-15 21:22:24
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信