node.js 服务器登录注册
Posted 飞刀还问情
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了node.js 服务器登录注册相关的知识,希望对你有一定的参考价值。
get: 不安全 小 2k 数据会在地址栏上显示 从服务器获取 快
post: 相对安全 https 大 1G 不会 向服务器发送 慢
登录注册(get与post合并)
user.html:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="jquery.js"></script>
<script>
$(function(){
$oUser = $("#user");
$oPass = $("#pass");
$oLogin = $("#login");
$oReg = $("#reg");
$oLogin.click(function(){
$.ajax({
type:"get",
url:"/login",
data:{
user:$oUser.val(),
pass:$oPass.val()
},
async:true,
success:function(str){
alert(str);
}
});
});
$oReg.click(function(){
$.ajax({
type:"get",
url:"/reg",
data:{
user:$oUser.val(),
pass:$oPass.val()
},
async:true,
success:function(str){
alert(str);
}
});
});
})
</script>
</head>
<body>
用户名:<input id = "user" type="text" value="aaa"/><br />
密码: <input id ="pass" type="text" value="123"/><br />
<input id = "login" type="button" value="登录"/>
<input id = "reg" type="button" value="注册"/>
</body>
</html>
server.js
var http = require("http");
var fs = require("fs");
var modUrl = require("url");
var qs = require("querystring");
var users = {aaa:123};
var server = http.createServer(function(req,res){
var url = req.url;
var str = "";
req.on("data",function(data){
str += data;
})
req.on("end",function(){
var urlObj = modUrl.parse(url,true);
url = urlObj.pathname;
var GET = urlObj.query;
var POST = qs.parse(str);
var params = req.method == "POST" ? POST : GET;
var username = params.user;
var password = params.pass;
if(url == "/login"){
if(users[username]){
if(users[username] == password){
res.end(JSON.stringify({"error":1,"msg":"登陆成功"}));
}else{
res.end(JSON.stringify({"error":0,"msg":"用户名或者密码错误"}));
}
}else{
res.end(JSON.stringify({"error":0,"msg":"用户名或者密码错误"}));
}
}else if(url == "/reg"){
if(users[username]){
res.end(JSON.stringify({"error":0,"msg":"用户名已存在"}));
}else{
users[username] = password;
res.end(JSON.stringify({"error":1,"msg":"注册成功"}));
}
}else{
fs.readFile("www"+url,function(err,data){
if(err){
res.end("404");
}else{
res.end(data);
}
})
}
})
});
server.listen("9000",function(){
console.log("服务器已打开!");
})
运行效果:
打卡服务器
登录
注册
以上是关于node.js 服务器登录注册的主要内容,如果未能解决你的问题,请参考以下文章
Node.js_express_中间件 middleware_登录/注册实例
Node.js+express+MySQL仿美团注册登录绑定第三方登录