如何使用Nodejs中的express接受GET和POST数据以及如何自己写一个中间件

使用express接受get和post数据,首先下载我们所需要的框架 express和express-static

  npm install express
 npm install  express-static

然后使用express创建服务器并接受get和post数据

get数据
js代码:
const   express=require('express');
var server=express();
server.listen(8080);
server.use('/',function(req,res){
    console.log(req.query);
})
html代码:
 
用户名: 密 码:

我们开启服务器,然后打开html页面,输入用户名和密码,点击提交,我们在命令行中就可以看到我们输入的信息会在命令行中显示

post数据

接受post数据相对get数据来说要稍微复杂点,接受post数据需要借助 “中间件” body-parser

所以首先我们需要下载一下body-paser

npm install body-parser
js代码
const express=require('express');
const bodyParse=require('body-parse');
var server=express();
server.listen(8080);

server.use(bodyParser.urlencoded({}));
server.use('/',function(req,res){
   console.log(req.body);
}) 
html代码:
   
用户名: 密 码:

我们开启服务器,然后打开html页面,输入用户名和密码,点击提交,我们在命令行中就可以看到我们输入的信息会在命令行中显示

链式操作

const express=require('express');
const bodyParse=require('body-parser');
var server=express();
server.listen(8080);

//链式操作://请求同一个地址才叫做链式操作
    server.use('/',function(req,res,next){
        console.log('a');
        next();//next参数的意思是说执行完a如果还要继续向下执行就要写next,不执行接下来的东西就不需要写
    })
    server.use('/',function(req,res,next){
        console.log('b')
    })

自己仿写一个body-parse

const express=require('express');
const querystring=require('querystring');//把数据输出在json中
var server=express();
server.listen(8080);

server.use(function(req,res,next){
    var str='';
    req.on('data',function(data){
         str+=data;
    })
    req.on('end',function(){
        req.body=querystring.parse(str);
        next();
    })

})
server.use('',function(req,res){
    console.log(req.body);
})

你可能感兴趣的:(如何使用Nodejs中的express接受GET和POST数据以及如何自己写一个中间件)