登录页面验证

article/2025/10/10 3:12:52

页面组件

登录页

<template><div><p>用户名:<input type="text" v-model="userName" /></p><p>密码:<input type="text" v-model="passWord" /></p><button @click="login()">登录</button></div>
</template><script>
export default {name:'LoginView',data(){return {userName:'root',passWord:'root'}},methods:{login(){}}
}
</script>

首页

  <div class="home"><h1>信息管理首页</h1>
<router-link to="/page1">导航一</router-link> 
<router-link to="/page2">导航二</router-link><router-view></router-view></div>
</template><script>
import axios from 'axios'
export default {
name:'HomePage',

路由配置

import Vue from 'vue'
import Router from 'vue-router'
Vue.use(Router)
const routes=[
{path:'/login',name:'login',component:()=>import('../views/login')
}
]
const router=new Router({routes
})
router.beforeEach((to,from,next)=>{let token=window.sessionStorage.getItem('token')
if(to.path!='/login' && !token){
next({path:'/login'})
}else{if(to.path=='/login'&& token){next('/home')}else{next()}
}})export default router

一开始并没有重定向
to.path 和from.path都是’/’
在路由中添加全局守卫

sessionStorage有token:页面1去页面2–直接进入。页面1去登录页–直接跳转到首页
sessionStorage没有token:去登录页

sessionStorage和localStorage

sessionStorage:是会话期间的存储机制,数据只在当前标签页共享,存在本地,关闭浏览器后会清除数据,关闭标签页清除数据
localStorage:是持久化的存储机制,数据会存在浏览器中,浏览器关了数据也还在,只有清除缓存才会小时
token只应该在当前网站打开期间生效,因此应该保存在sessionStorage

window.sessionStorage.setItem('data',res[index].token)//将获取的到token保存到客户端seesionStorage中---设置键名data,值名res.data.token
获取token:const tokenStr=window.sessionStorage.getItem('token')

sessionStorage基本用法

// Save data to sessionStorage
sessionStorage.setItem('key', 'value');// Get saved data from sessionStorage
let data = sessionStorage.getItem('key');// Remove saved data from sessionStorage
sessionStorage.removeItem('key');// Remove all saved data from sessionStorage   谨慎使用。
sessionStorage.clear();

在这里插入图片描述

登录验证

		login(){
axios({method:'get',url:'http://localhost:3003/posts'}).then(response=>{//拿到返回值,response相当于axios中成功的返回var res=response.data,len=res.length,userNameArr=[], passWordArr=[],ses=window.sessionStorage;for(var i=0;i<len;i++){userNameArr.push(res[i].username)passWordArr.push(res[i].password)}if(userNameArr.indexOf(this.userName)===-1){alert('账号不存在')}else{var index=userNameArr.indexOf(this.userName)if(passWordArr[index]===this.passWord){ses.setItem('data',res[index].token)//将获取的到token保存到客户端seesionStorage中this.$router.push('/home') //跳转页面到首页}else{alert('密码错误')}}
}).catch(err=>{alert('连接服务器失败',err)
})}}
}

http://chatgpt.dhexx.cn/article/xoAu6fcU.shtml

相关文章

JavaScript登录验证

要求 账号&#xff1a;3-15位并且不能数字开头 密码&#xff1a;6-18位并且不能全是数字或者全是字符 页面代码 <body> <form><label>用户名:</label><input type"text" id"userName" name"userName" placeholder…

用户登陆验证

我们在操作各种软件的过程中&#xff0c;都涉及“用户登陆”的操作。例如登陆QQ、微信等软件&#xff0c;都需要用户名和密码的验证。 现在我们要开发一个图书馆管理系统&#xff0c;系统需要一个登陆的功能&#xff0c;我们应该怎么样实现用户登陆的验证功能&#xff1f; 我们…

Web 登录验证

前言&#xff1a;Web 用户的身份验证&#xff0c;及页面操作权限验证是B/S系统的基础功能&#xff0c;一个功能复杂的业务应用系统&#xff0c;通过角色授权来控制用户访问&#xff0c;本文通过Form认证&#xff0c;Mvc的Controller基类及Action的权限验证来实现Web系统登录&am…

如何实现验证登录

开发工具与关键技术&#xff1a;VS .MVC基础 作者&#xff1a;卢雅婷 撰写时间&#xff1a;2019/05/6 &#xff08;代码来源于老师&#xff09; 实现验证登录这个操作是一些软件使用前的操作&#xff0c;第一步是注册&#xff0c;再就是登陆软件&#xff0c;&#xff08;比喻微…

实现登录验证

最近练习搭建了一个后台管理系统,首先第一步做了关于验证登录的功能.以下项目使用了Nacos作为服务发现和注册中心,将Auth和gateway,system等相关多个微服务注册进Nacos.每次刷新登录页面,就会获取新的验证码(,输入正确的验证码即可成功跳转至首页. 获取验证码url:http://localh…

【图解】用户登录验证流程,这下彻底搞懂了!

开发者&#xff08;KaiFaX&#xff09; 面向全栈工程师的开发者 专注于前端、Java/Python/Go/PHP的技术社区 本文通过图示及代码的方式介绍用户登录流程及技术实现&#xff0c;内容包括用户登录&#xff0c;用户验证&#xff0c;如何获取操作用户的信息以及一些黑名单及匿名接口…

前端应该掌握的登录认证知识

1 背景 前一段时间&#xff0c;参与了老项目的迁移工作&#xff0c;配合后端接口迁移时&#xff0c;由于两个项目采取了不一样的登陆方案&#xff0c;所以遇到了跨域登录态无法共享的问题。经过各方协调&#xff0c;最终老项目将迁移页面部署在新项目的指定网关下&#xff0c;…

中间件登录验证(白名单,黑名单)

中间件版的登录验证需要依靠session&#xff0c;所以数据库中要有django_session表。 urls.py from django.conf.urls import url from app01 import viewsurlpatterns [url(r^index/$, views.index),url(r^login/$, views.login, namelogin), ]urls.py View Code views.py fr…

登录验证的那些事儿

前言 在以前的项目我们一般使用session或者cookie来存储已登录的用户信息&#xff0c;这样到达一个免除重复登录的问题&#xff0c;那么如何登录&#xff0c;又如何验证&#xff0c;就是一直在讨论的问题。今天我们对这些技术点进行一个梳理。 字 多 你 就 挑 有 颜 色 的 看…

计算机网络-(自顶向下方法)

计算机网络基础知识概述 计算机网络学习的核心内容就是网络协议的学习。网络协议是为计算机网络中进行数据交换而建立的规则、标准或者说是约定的集合。因为不同用户的数据终端可能采取的字符集是不同的&#xff0c;两者需要进行通信&#xff0c;必须要在一定的标准上进行。 …

计算机网络:自顶向下方法 笔记

计算机网络&#xff1a;自顶向下方法 笔记 综述因特网部件图例交换方式分组交换电路交换频分复用时分复用 对比 五层/七协议一个传输实例攻击DOS攻击 应用层应用程序结构客户-服务器结构P2P point2point结构 应用层协议总览http报文格式http状态码cookiesessionhttps FTPSMTPDN…

计算机网络 自顶向下 笔记

目录 第一章 计算机网络和因特网 全书答案评论留言即可 我私发&#xff0c;这里上传不了文本 第一章 计算机网络和因特网 什么是因特网&#xff1f; 因特网的具体构成&#xff1a;构成因特网的基本硬件和软件组件 分布式应用的互联网基础设施来描述 ---------------------…

《计算机网络-自顶向下》04. 网络层-数据平面

文章目录 网络层数据平面和控制平面两者的概述数据平面控制平面 控制平面&#xff1a;传统方法控制平面&#xff1a;SDN 方法网络服务模型 路由器工作原理通用路由器体系结构输入端口的功能基于目标的转发 交换结构内存交换方式总线交换方式纵横式交换方式 输出端口的功能何时何…

计算机网络自顶向下方法 习题参考答案 第一章

复习题&#xff1a; R1. 没有什么不同。PC、服务器、手机等。Web服务器是端系统。 R2. Protocol is commonly described as a set of international courtesy rules. These well-established and time-honored rules have made it easier for nations and people to live a…

计算机网络自顶向下方法(第六版) 课后题答案 | 第三章

复习题 R1. a. 将此协议称为简单传输协议(STP)。在发送方端&#xff0c;STP 从发送过程中接收不超过 1196 字节的数据块、目标主机地址和目标端口号。STP 向每个块添加一个 4 字节的报头&#xff0c;并将目标进程的端口号放在这个报头中。然后 STP 将目标主机地址和报文段提供…

计算机网络—自顶向下 计算机网络和因特网

目录 1. 什么是计算机网络 1.1 概念 1.2 因特网的具体构成 2. 计算机网络的结构 2.1 网络边缘(The Network Edge) 2.1.1 接入网 2.1.2 物理媒体 2. 2 网络核心(The network core) 2.2.1 电路交换 2.2.2 多路复用 2.2.3 报文交换 2.2.4 分组交换 2.2.5 网络之…

计算机网络自顶向下方法(一)——计算机网络和因特网

不要成为理想的巨人&#xff0c;行动的矮子 文章目录 写在前面什么是Internet?具体构成及描述什么是Internet: 从服务角度 网络边缘网络边缘&#xff1a;采用网络设施的面向连接服务网络边缘&#xff1a;采用基础设施的无连接服务 网络核心网络核心&#xff1a;电路交换电路交…

【计算机网络:自顶向下方法】(二)应用层

tm 【计算机网络&#xff1a;自顶向下方法】(二)应用层 文章目录 应用层如何创建一个新的网络应用? 2.1 应用层原理网络应用的体系结构对等模式(P2P:Peer To Peer)混合体&#xff1a;客户-服务器和对等体系结构 进程通信分布式进程通信需要解决的问题问题1&#xff1a;…

计算机网络自顶向下-第 8 版

Computer Networking A Top Down Approach 8th Edition Computer Networking A Top Down Approach 8th Edition 概述本书资源计算机网络自顶向下方法第八版英文pdf图片预览 更新特点精彩试读作者介绍 概述 概述 Computer Networking A Top Down Approach第8版也就是计算机网…

自顶向下计算机网络 传输层

自顶向下计算机网络学习 传输层 一、概述和传输层服务1.1 传输层提供的服务1.2传输层和网络层的关系1.3 传输层协议可靠的、保序的传输&#xff1a;TCP不可靠、不保序的传输&#xff1a;UDP 二、多路复用与解复用2.1 什么是复用与解复用2.2 面向连接(TCP)的多路复用与分解2.3 无…