Html、Js基于web储存localStorage下的注册登录及登录验证的简单网页

Html、Js基于web储存localStorage下的注册界面、登录界面及登录验证成功弹出跳转的简单网页

实现结果:

  1. 注册网页 注册信息存入localStorage (web下存储)
  2. 登录网页 注册完成跳转登录界面 验证登录完成 延时跳转至目标网页

实现效果如下:(没来得及美化页面)

登录界面

在这里插入图片描述

注册界面

在这里插入图片描述

注册完成界面

在这里插入图片描述

验证登录界面

在这里插入图片描述


代码实现
1.Login.html

<!-- /**
 * 基于localStorage储存信息的网站登录
 */ -->
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>登录界面</title>
		<style type="text/css">
			body{
				text-align: center;
			}
		</style>
	</head>
	<body>
		<font size="6">登&nbsp;录</font>
		<br />
		用户名:
		<input type="text" name="user_name" id="user_name" placeholder="请输入用户名" />
		<br />
		密码:
		<input type="password" name="user_password" id="user_password" value="" placeholder="请输入密码" />
		<br>
		<button type="button" id="login">登录</button>
		<button type="button" id="register">注册</button>
		<br />
		<p id="login_sucss"></p>
	</body>
	<script type="text/javascript">
		var login_btn = document.getElementById("login");
		var register_btn = document.getElementById("register");
		//登陆按钮实现
		login_btn.addEventListener("click",function(){
			var user_name = document.getElementById("user_name").value;
			var user_password = document.getElementById("user_password").value;
			var user_nameArr = new Array(localStorage.length);
			//将储存的记录存入数组中
			for(i=0;i<localStorage.length;i++){
				user_nameArr[i] = localStorage.key(i);
			}
			if(user_nameArr.includes(user_name)){
				var store_password = localStorage.getItem(user_name);
				 if(user_password == store_password){
					 confirm("登陆成功,是否前往");  //选择弹框
					 window.location.href = "https://blog.csdn.net/weixin_44609873";
					 
				 } else{
					 document.getElementById("login_sucss").innerHTML = "密码错误!";
				 }
			}
			else{
				document.getElementById("login_sucss").innerHTML = "用户名不存在!";
			}
		})
		//注册按钮实现
		register_btn.addEventListener("click",function(){
			window.location.href = 'Register.html';
		})
	</script>
</html>


2.Register.html

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>注册</title>
		<style type="text/css">
			body{
				text-align: center;
				margin-left: auto;
				margin-right: auto;
			}
		</style>
	</head>
	<body>
		<font size="6" color="">注&nbsp;册</font>
		<br />
		用户名:
		<input type="text" name="reg_name" id="reg_name" value="" />
		<br />
		密码:
		<input type="password" name="reg_password" id="reg_password" value="" />
		<br />
		<button type="button" id="register_btn">注&nbsp;册</button>
		<br />
	</body>
	<script type="text/javascript">
		var register_btn = document.getElementById("register_btn");
		//点击注册触发事件
		register_btn.addEventListener("click",function(){
			var user_name = document.getElementById("reg_name").value;
			var user_password = document.getElementById("reg_password").value;
			if(user_name.length == 0||user_password.length ==0){
				alert("请输入需要注册的用户名或密码!");
			}
			//注册成功存入localStorage,并且弹回登录界面
			else{
				localStorage.setItem(user_name,user_password);
				alert("注册成功!正在跳转。。。");
				//注册完成实现延时跳转登录 
				//第二种延时跳转
				setTimeout(function(){
					window.location.href = "Login1.html";
				},1000);  //1秒
			}
		})
	</script>
</html>

  • 22
    点赞
  • 86
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
Node.js基于token的登录验证是一种常见的身份验证和授权机制。它使用令牌作为凭据来验证用户身份并授权访问受保护的资源。 当用户登录成功后,服务器会生成一个token。这个token是一个随机字符串,它包含了一些用户信息和相关权限。服务器将这个token发送给客户端,客户端将其保存在本地,如localStorage或cookie中。 当用户访问需要身份验证的资源时,客户端将token作为请求头或请求参数发送给服务器。服务器接收到请求后,会解析token并验证其有效性。若token有效且未过期,则认为用户已登录,可以授权用户访问受保护的资源。否则,服务器会返回未授权的错误响应。 优点: 1. 无状态:服务器不需要保存用户的登录状态,因此可以更好地扩展和分布式。 2. 安全性:通信过程中token被加密和签名,使其难以伪造和改变。 3. 高效性:验证过程简单,减少了服务器的负载。 4. 可扩展性:可以轻松地用于支持多个客户端和API。 缺点: 1. 客户端存储:客户端需要存储token,如果被盗用或泄露,可能会导致安全风险。 2. 无法废止tokens:一旦发出的token被盗用,服务器无法废止,除非过期时间到期或用户进行密码重置。 总之,基于token的登录验证是一种简单且高效的身份验证和授权机制,适用于大多数Web应用程序。但在实施时,必须注意安全风险,例如使用HTTPS来确保通信安全,并定期更新token以减少盗用的风险。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值