当前位置:   article > 正文

前端用户登录操作_初次登陆没有token

初次登陆没有token

目录

一、Session和Cookie

1.Session说明

2.Cookie说明

3.session和cookie区别

二、保存用户登录信息

三、设置路由导航守卫


一、Session和Cookie

1.Session说明

1.Session称之为 “会话机制”
2.在浏览器中打开网页 就是一个会话.
3.用户的数据可以保存到会话中,但是有生命周期. 当会话关闭,则数据消失.

2.Cookie说明

1.cookie是一个小型的文本文件
2.cookie中存储的数据一般都是密文.
3.cookie中的数据的生命周期可控. 几天.几年!!!

3.session和cookie区别

1.session的数据是临时存储.cookie的数据可以永久保存. (生命周期不同)
2.sesion是浏览器中的一个内存对象!而cookie是一个实际的本地文件. (形式不同).
3.session一般存储是一些涉密数据.cookie一般存储相对公开的数据(免密登录). (安全性)

二、保存用户登录信息

        用户登录成功后,将携带的token信息封装到sessionStorage里,路由导航守卫将基于此token信息来判断用户是否登录。如果没有token信息,则表示用户没有登录,重定向到用户登录页面。

  1. login(){
  2. //获取表单对象之后进行数据校验
  3. //valid 表示校验的结果 true表示通过 false表示失败
  4. this.$refs.loginFormRef.validate(async valid => {
  5. //如果没有完成校验则直接返回
  6. if(!valid) return
  7. //如果校验成功,则发起ajax请求
  8. const {data: result} = await this.$http.post('/user/login',this.loginForm)
  9. if(result.status !== 200) return this.$message.error("用户登录失败")
  10. this.$message.success("用户登录成功")
  11. //获取用户token信息
  12. let token = result.data
  13. window.sessionStorage.setItem("token",token)
  14. //用户登录成功之后,跳转到home页面
  15. this.$router.push("/home")
  16. })
  17. }

三、设置路由导航守卫

        前端页面跳转是通过路由进行控制。

        规定: 如果用户没有登录,则只允许访问登录页面.只有登录之后才能访问其它页面.

  1. const router = new VueRouter({
  2. routes
  3. })
  4. /**
  5. * 定义路由导航守卫
  6. * 参数1. to 路由跳转的网址
  7. * 参数2. from 路由从哪里来
  8. * 参数3. next 是一个函数,表示放行或重定向
  9. * next() 放行
  10. * next("/login") 重定向
  11. * 业务实现:
  12. * 核心逻辑: 检查是否有token.
  13. * 如果访问login页面 直接放行.
  14. * 有token 表示已经登录,放行请求
  15. * 没有token 表示用户没有登录,重定向到登录页面
  16. */
  17. router.beforeEach((to,from,next) => {
  18. if(to.path === "/login"){
  19. return next()
  20. }
  21. //说明用户访问的页面不是login 请求需要校验
  22. //获取token数据.
  23. let token = window.sessionStorage.getItem("token")
  24. //if(token !==null && token.length>0)
  25. //下列if 解释为: 如果token不为null
  26. if(token){
  27. return next()
  28. }
  29. next("/login")
  30. })

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/214289
推荐阅读
  

闽ICP备14008679号