[nodejs] get post
get
const http = require('http');
const url = require('url');
const host = 'http://localhost:3000';
http.createServer(function (req, res) {
const { searchParams } = new URL(req.url, host);
console.log(searchParams);
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end(searchParams.toString());
}).listen(3000);
console.log(`Server running at ${host}`);
post
login.ejs
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <form action="/doLogin" method="post"> 用户名:<input type="text" name="username"><br> 密码: <input type="password" name="password"><br> <input type="submit" value="提交"> </form> </body> </html>
server.js
const http = require('http');
const ejs = require('ejs');
const host = 'http://localhost:3000';
http.createServer(function (req, res) {
const { url } = req;
if (url === '/login') {
ejs.renderFile('./login.ejs', {}, (err, data) => {
if (!err) {
res.writeHead(200, {'Content-Type': 'text/html'});
res.end(data);
}
})
} else if (url === '/doLogin') {
let postData = '';
req.on('data', (chunk) => {
postData += chunk;
});
req.on('end', () => {
console.log(postData);
res.end(postData);
});
}
}).listen(3000);
console.log(`Server running at ${host}`);

浙公网安备 33010602011771号