querystring模块-POST参数处理

拿到 POST 请求传递过来的参数

使用querystring模块

语法示例如下

querystring.parse(str[, sep[, eq[, options]]])
querystring.stringify(obj[, sep[, eq[, options]]])

querystring.stringify(obj[, sep[, eq[, options]]]): 将对象转换为参数

querystring.parse(str[, sep[, eq[, options]]]): 将参数转换为对象

let http = require("http");
let queryString = require("querystring");

// 1.创建一个服务器实例对象
let server = http.createServer();
server.on("request", function (req, res) {
    // 1.定义变量保存传递过来的参数
    let params = "";
    // 注意点: 在NODEJS中 ,POST请求的参数我们不能一次性拿到, 必须分批获取
    req.on("data", function (chunk) {
        // 每次只能拿到一部分数据
        params += chunk;
    });
    req.on("end", function () {
        // 这里才能拿到完整的数据
        console.log(params);
        let obj = queryString.parse(params);
        console.log(obj.userName);
        console.log(obj.password);
        res.end(obj.userName + "----" + obj.password);
    });
});

// 3.指定监听的端口
server.listen(3000);

发送请求页面内容如下所示:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>querystring模块-POST参数处理</title>
</head>
<body>
<form action="http://127.0.0.1:3000/index.html" method="post">
    <input type="text" name="userName">
    <input type="text" name="password">
    <input type="submit" value="提交">
</form>
</body>
</html>

posted @ 2020-11-19 00:00  BNTang  阅读(560)  评论(0编辑  收藏  举报