var server=require('./server.js')
var handler=require('./handler')
var route=require('./router.js')
var handle={};
handle['/']=handler.home;
handle['/home']=handler.home;
handle['/data']=handler.datas;
handle['/list']=handler.list
server.startServer(route,handle);
老师为啥我post请求参数出不来
<!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="/list" method="post">
name: <input type="text" value='name'>
password: <input type="password" value="password">
<input type="submit" value="Submit">
</form>
首页
</body>
</html>
var http = require('http');
var url = require("url");
var queryString = require('querystring');
function startServer(route, handle) {
var server = http.createServer(function (req, res) {
// console.log(url.parse((req.url).pathname));
//读取get请求url的参数
var data = [];
var pathname = url.parse(req.url).pathname
req.on('error', function (err) {
console.log(err);
}).on('data', function (chunk) {
data.push(chunk)
}).on('end', function () {
// console.log(req.method);
if (req.method === 'POST') {
//POST请求方式处理
console.log(data);
data = Buffer.concat(data).toString();
console.log(queryString.parse(data));
//data 字符串形式
//queryString.parse(data) 将数据从字符串形式变为对象形式
route(handle, pathname, res, queryString.parse(data))
} else {
//Get请求处理
var parmas = url.parse(req.url, true).query
//pathname
route(handle, pathname, res, parmas)
}
})
})
server.listen(3000)
console.log('端口号3000');
}
module.exports = {
startServer
}
var fs=require('fs');
function route(handle,pathName,res,parmas){
if(typeof handle[pathName]==='function'){
handle[pathName](res,parmas)
}else{
res.writeHead(404,{"content-Type":"text/html"})
fs.createReadStream(__dirname+'/404.html').pipe(res)
}
}
module.exports=route;
var fs=require('fs');
var data=require('./data.json')
function home(res){
res.writeHead(200,{'Content-Type': 'text/html'})
fs.createReadStream(__dirname+'/home.html').pipe(res)
}
function datas(res){
res.end(JSON.stringify(data))
}
function list(res,parmas){
res.writeHead(200,{'Content-Type': 'application/json'},'utf8')
// var lists=[
// {name:'张三',age:20},
// {name:'李四',age:26},
// {name:'王五',age:40}
// ]
res.end(JSON.stringify(parmas))
}
module.exports={
home,datas,list
}
{
"name":"李四",
"age":30
}
!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>
404
</body>
</html>
