美文网首页Node.js
Node.js进阶之【3】 : 解析客户端POST方式传

Node.js进阶之【3】 : 解析客户端POST方式传

作者: 岚平果 | 来源:发表于2020-03-18 13:20 被阅读0次

    一、创建一个本地服务器

      1. 如下所创建的服务器
    const http = require('http');
    const querystring = require('querystring');
    var server = http.createServer((req, res) => {
        var i = 0;
        var str = '';
        // 分段接收POST发送过来的数据
        req.on('data', (data) => {
            str += data;
            console.log(`第${i++}次接收数据`)
        })
        // 在接收完所有数据之后会进行这步操作
        req.on('end', () => {
            let obj = querystring.parse(str);
            console.log(obj)
            res.end();
        })
    })
    server.listen(8080)
    
      1. 服务器接收客户端post传送过来的数据,分段式接收,把这些接收到的分段式数据进行拼接,等到所有数据都接收到了,再进行【querystring.parse】把数据解析成一个对象
    // 分段接收POST发送过来的数据
        req.on('data', (data) => {
            str += data;
            console.log(`第${i++}次接收数据`)
        })
        // 在接收完所有数据之后会进行这步操作
        req.on('end', () => {
            let obj = querystring.parse(str);
            console.log(obj)
            res.end();
        })
    

    二、创建一个index.html

    • 1.【index.html】里面一个表单【post】方式进行提交。
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>post数据提交</title>
    </head>
    <body>
         <!-- action需要写入完整,不要少了端口8080 -->
        <form action="http://localhost:8080/aaa" method="post">
            姓名:<input type="text" name="user"> </br>
            密码:<input type="password" name="pass"> </br>
            <textarea value="" id="" cols="30" rows="10" name="text"></textarea>
            <input type="submit" value="提交">
        </form>
    </body>
    </html>
    

    三、表单进行提交

      1. 启动服务器【node sever.js】后,现在进行表单提交


        image.png
      1. 当post传送的数据大小不大时,接收一次就把所有数据接收到了。


        image.png
      1. 当大量数据通过【post】方式传送到服务器,会通过分段式接收数据,这里例子经过了33次才接收到所有数据


        image.png
    image.png

    相关文章

      网友评论

        本文标题:Node.js进阶之【3】 : 解析客户端POST方式传

        本文链接:https://www.haomeiwen.com/subject/efdqyhtx.html