天天看点

node.js中post如何被提交

表单代码:

<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <form action="http://127.0.0.1:81/dopost" method="post">
        <p>姓名:<input type="text" name="name"></p>
        <p>性别:<input type="radio" name="sex" value="男">男<input type="radio" name="sex" value="女">女</p>
        <p><input type="submit" value="提交"></p>
    </form>
</body>
</html>
           

接收代码:

var http = require("http");
var querystring = require("querystring");

//创建服务器
http.createServer(function (req, res) {
    //如果你访问地址是这个,并且请求类型是post
    if(req.url == "/dopost" && req.method.toLowerCase() == "post"){
        var alldata = "";
        //下面是post请求接收的一个公式 addListener不是js的语法,是node.js本身的语法
        req.addListener("data", function (chunk) {
            alldata += chunk;
        });
        //全部传输完毕
        req.addListener("end", function () {
            var datastring = alldata.toString();
            res.end("success");
            //将datastring转化为一个对象
            var dataObj = querystring.parse(datastring);
            console.log(dataObj);
        });
    }
}).listen(81, "127.0.0.1");