querystring (qs) 模块没有在 nodejs 中解析?

querystring (qs) module is not parsing in nodejs?

各位,我是 NODEJS 的初学者 我正在通过 post 请求发送数据 postman 在某个时间点我正在使用查询字符串 module.I'正在解析 post 数据。我想在此 code.but 中打印用户名和密码 这不是 printing.can 有人解决了这个问题吗?提前致谢...

"use strict";
let http=require('http');
let url=require("url");
let qs=require("querystring");
let port=process.env.PORT||8086;
let routes={
 'GET':
 {
      '/':(req,res,urldata)=>
      {
        res.statusCode=200;
        res.setHeader('content-Type','text/plain');
        res.end("I 'm sending get request data " );
      },
      '/api/getinfo':(req,res,urldata)=>{
        res.statusCode=200;
        res.setHeader('content-Type','application/json');
        console.log(JSON.stringify(urldata.query));
        res.end(JSON.stringify(urldata.query));
      }
 },
 'POST':
 {
     '/':(req,res,urldata)=>{
        res.statusCode=200;
        res.setHeader('content-Type','text/plain');
        res.end("I 'm sending post request " );
     },
     '/api/login':(req,res,urldata)=>{
       let body='';
        req.on('data',(c)=>{
            body+=c;
       });
       req.on('end',()=>{
           let par=qs.parse(body);
           console.log("USERNAME POST:"+par['user']);
           console.log("PASSWORD POST:"+par['pass']);
           res.end("ok I'm getting post data");
       });
     }
 },
 'NA':(req,res)=>{
      res.statusCode=404;
      res.end("Content Not found");
 }
}
function handler(req,res)
{
    if(req.url!="/favicon.ico")
    {
        let urldata=url.parse(req.url,true);
        console.log(urldata);
        console.log("Request Method:"+req.method);
        console.log("Request URL:"+req.url);
        console.log("Pathname:"+urldata.pathname);
        let a=routes[req.method][urldata.pathname];
       
        if(a!=undefined)
        {
            a(req,res,urldata);
        }
        else{
            routes['NA'](req,res);
        }
       
      
    }
}
let server=http.createServer(handler);
server.listen(port,()=>{
    console.log("server is listening on port",`${port}`);
});

你应该使用:const par=JSON.parse(body)

而不是:让 par=qs.parse(body);

"use strict";
let http=require('http');
let url=require("url");
let qs=require("querystring");
let port=process.env.PORT||8086;
let routes={
 'GET':
 {
      '/':(req,res,urldata)=>
      {
        res.statusCode=200;
        res.setHeader('content-Type','text/plain');
        res.end("I 'm sending get request data " );
      },
      '/api/getinfo':(req,res,urldata)=>{
        res.statusCode=200;
        res.setHeader('content-Type','application/json');
        console.log(JSON.stringify(urldata.query));
        res.end(JSON.stringify(urldata.query));
      }
 },
 'POST':
 {
     '/':(req,res,urldata)=>{
        res.statusCode=200;
        res.setHeader('content-Type','text/plain');
        res.end("I 'm sending post request " );
     },
     '/api/login':(req,res,urldata)=>{
       let body='';
        req.on('data',(c)=>{
            body+=c;
       });
       req.on('end',()=>{
           const par=JSON.parse(body)
           console.log("USERNAME POST:"+par['user']);
           console.log("PASSWORD POST:"+par['pass']);
           res.end("ok I'm getting post data");
       });
     }
 },
 'NA':(req,res)=>{
      res.statusCode=404;
      res.end("Content Not found");
 }
}
function handler(req,res)
{
    if(req.url!="/favicon.ico")
    {
        let urldata=url.parse(req.url,true);
        console.log(urldata);
        console.log("Request Method:"+req.method);
        console.log("Request URL:"+req.url);
        console.log("Pathname:"+urldata.pathname);
        let a=routes[req.method][urldata.pathname];
       
        if(a!=undefined)
        {
            a(req,res,urldata);
        }
        else{
            routes['NA'](req,res);
        }
       
      
    }
}
let server=http.createServer(handler);
server.listen(port,()=>{
    console.log("server is listening on port",`${port}`);
});