首页 > 其他分享 >登录注册相关实现

登录注册相关实现

时间:2022-11-19 18:45:04浏览次数:56  
标签:登录 跳转 next token 注册 router 相关 页面

目录

实现一个网页未登录时自动跳转至登录界面?

在地址栏输入url之后,如果当前localStorage中并未存储token并且我们要去的网页并不是登录页面,可想而知,应当强制跳转至登录页面。这里就可以利用vue-router的路由守卫来实现。

  • 利用beforeEach,当token存在或者要去往的页面是登录页面(我要登录总还是可以的吧~),直接放行;
  • 否则,利用next跳转至登录界面(路由为'/login')
// src/router/index.js
router.beforeEach((to, from, next) => {
  const token = localStorage.getItem('token')
  if (token || to.path === '/login') {
    next()
  } else {
    next('/login')
  }
})

用户名与密码正确后登录又如何跳转至首页(或者其他页面)?

实现了上面的约束之后,我们就可以来实现登录功能了。

当用户名密码正确之后,点击登录,但这时我们还无法跳转至首页,因为上面的路由守卫中还需要token,我们应能从后端获取到token,并将该token存入localStorage中,并利用router.replace('/')来进行路由跳转。

以下是一个小例子:

// 利用element plus的表单功能
const submitForm = (formRef) => {
  formRef.validate((valid) => {
    if (valid) {
      // 如果表单校验成功并且用户名和密码正确,则将token存储起来,并跳转至首页
      if (loginForm.value.username === 'admin' && loginForm.value.password === 'admin') {
        localStorage.setItem('token', 'i have token!')
        router.replace('/')
      }
    } else {
      console.log('error')
    }
  })
}

标签:登录,跳转,next,token,注册,router,相关,页面
From: https://www.cnblogs.com/liuyxcc/p/16906741.html

相关文章

  • CSS注册页面练习
    样式      展示      ......
  • cmake相关
    cmake使用时配置python路径关于pythonempy报错的问题,手动指定python3路径来解决。catkinconfig-DPYTHON_EXECUTABLE=/usr/bin/python3catkinbuildufomap_*--cm......
  • HTML CSS 注册页面练习
    样式      展示      ......
  • 【mysql】关于python建立mysql相关操作
    1.安装用pip安装指令pipinstallpymysql查看安装成功#cmdpipshowmysql#cmd找list中有该软件piplist#python中不报错importpymysql2.操作流程3.封装......
  • Navicat Premium16安装及注册教程
    NavicatPremium是一套数据库开发工具,让你从单一应用程序中同时连接MySQL、MariaDB、MongoDB、SQLServer、Oracle、PostgreSQL和SQLite数据库。它与AmazonRDS、Ama......
  • 二分图相关知识+染色法+匈牙利
    一、相关概念:1、二分图把图中的点分到两个集合中,集合内的点之间没有边相连,边存在于两个集合之间2、匹配、最大匹配、完美匹配匹配:匹配是边的集合,任意两条边都没有公共......
  • mybatis学习第⼆部分:Mybatis相关概念
    2.1 对象/关系数据库映射(ORM)ORM全称Object/Relation Mapping:表示对象-关系映射的缩写ORM完成⾯向对象的编程语⾔到关系数据库的映射。当ORM框架完成映射后,程序员既可......
  • SSH利用私钥登录时一个简单错误的解决过程
    SSH利用私钥登录时一个简单错误的解决过程问题描述在一次渗透测试过程中,利用linpeas.sh脚本扫描有无本地提权漏洞,发现了目标靶机有SSH私钥,并且又相应的权限读取,因此从lin......
  • WordPress修改后台登录地址
    最近网站总是收到一些国外IP的恶意登录信息,多的时候一天几十次,试验了网上介绍的很多方法,像登录页面后面加参数,又或加验证码,都无法彻底解决这个问题,因为都不是人工访问该页......
  • web相关概念回顾、服务器软件_概述
    web相关概念回顾软件架构:C/S:客户端/服务器端B/S:浏览器/服务器端资源分类:静态资源:所有用户访问后,得到的结果都是一样的,称为......