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 (二)服务器登录注册
原文地址:https://www.cnblogs.com/zhongchao666/p/9288616.html