关于node.js代码的求助
  • 板块学术版
  • 楼主Quenna
  • 当前回复11
  • 已保存回复11
  • 发布时间2023/3/29 21:14
  • 上次更新2023/10/23 20:05:13
查看原帖
关于node.js代码的求助
697421
Quenna楼主2023/3/29 21:14

我本想写一段留言板代码,如下

var http = require('http');
var fs = require("fs");
var url = require('url');
var data,doing;//读和写存储器
var setting_user;
function read(name){
	//读取
	data = fs.readFileSync(name);
	data = data.toString();
	return data;
}
function write(name,want){
	//添加
	data = fs.readFileSync(name);
	data=data.toString();
	doing = fs.openSync(name, "w");
	fs.writeSync(doing, data+want);
	fs.closeSync(doing);
}
function set(name,want){
	//覆盖
	doing = fs.openSync(name, "w");
	fs.writeSync(doing, want);
	fs.closeSync(doing);
}
function find_user(email,password){
	//寻找用户是否登录
	let check=read('user.txt');
	let reading;
	check=check.split('\n');
	if(email==''&&password=='') return -114514;
	for(let i=0;i<setting_user;i++){
		reading=check[i].split('|');
		if(reading[0]==email&&reading[1]==password){
			return i;
		}
	}
	return -1;
}
function init(){
	//获取设置数据
	setting_user=read('setting_user.txt');
}
http.createServer(function (request, response) {
	init();
	var get = url.parse(request.url, true).query;
	if(find_user(get.email,get.password)==-1){
			switch (url.pathname){
			    case "/login_error":
			      response.writeHead(200, { "content-type": "text/html; charset=utf-8" });
			      response.end(fs.readFileSync("login_error/login_error.html"));
			      break;
			    case "/end.jpg": 
			      response.writeHead(200, { "content-type": "image/jpeg" });
			      response.end(fs.readFileSync("login_error/end.jpg"));
			      break;
			    case "/ico.ico":
			      response.writeHead(200, { "content-type": "image/x-icon" });
			      response.end(fs.readFileSync("login_error/ico.ico"));
			      break;
				case "/Minecraft.ttf":
				  response.writeHead(200, { "content-type": "font/ttf" });
				  response.end(fs.readFileSync("login_error/Minecraft.ttf"));
				  break;
			    default:
			      response.writeHead(404);
			      response.end();
			      break;
			  }
	}
    else if(find_user(get.email,get.password)>0){
		
	}else{
		switch (url.pathname){
		    case "/":
		      response.writeHead(200, { "content-type": "text/html; charset=utf-8" });
		      response.end(fs.readFileSync("main/main.html"));
		      break;
		    case "/end.jpg": 
		      response.writeHead(200, { "content-type": "image/jpeg" });
		      response.end(fs.readFileSync("main/end.jpg"));
		      break;
		    case "/ico.ico":
		      response.writeHead(200, { "content-type": "image/x-icon" });
		      response.end(fs.readFileSync("main/ico.ico"));
		      break;
			case "/Minecraft.ttf":
			  response.writeHead(200, { "content-type": "font/ttf" });
			  response.end(fs.readFileSync("main/Minecraft.ttf"));
			  break;
		    default:
		      response.writeHead(404);
		      response.end();
		      break;
		  }
	}
}).listen(8888);
console.log('http://127.0.0.1:8888/ is online');

结果......

理想很丰满,现实很骨感.....

2023/3/29 21:14
加载中...