- routes.js
const http = require("http");
const url = require("url");
const model = require("./model/model.js");
http
.createServer((req, res) => {
res.writeHead(200, { "Content-Type": "text/html;charset=utf8" });
let pathname = url.parse(req.url).pathname.replace("/", "");
if (pathname !== "favicon.ico") {
try {
model[pathname](req, res);
} catch (e) {
model["error404"](req, res);
} finally {
}
}
})
.listen(8080);
- model/model.js
const ejs = require("ejs");
const url = require("url");
const fs = require("fs");
const app = {
login(req, res) {
ejs.renderFile("views/form.ejs", {}, (err, str) => {
if (err) throw err;
res.end(str);
});
},
register(req, res) {
res.end("register");
},
doLogin(req, res) {
let { query } = url.parse(req.url, true);
if (req.method === "GET") {
res.end("doLogin");
} else if (req.method === "POST") {
let str = "";
req.on("data", chunk => {
str += chunk;
});
req.on("end", (err, data) => {
if (err) throw err;
fs.appendFile("fuck.txt", `${str}\n`, err => {
if (err) throw err;
console.log("文件写入成功");
});
res.end("<script>alert('登录成功');history.back();</script>");
});
}
},
error404(req, res) {
res.end("404");
}
};
module.exports = app;
稍微变的简洁了,但是还不是我想要的
网友评论