访问已发布表单数据的优化方法-NodeJS

问题描述

一个较旧的项目中,我看到了两种类型的表单数据处理。 在一种方法中,它是使用EventEmitter这样的方法来完成的:

 http.createServer(function(req,res){
       let decoder = new StringDecoder("utf-8");
       let buffer="";
        req.on("data",fuction(chunk){
            buffer += decoder.write(chunk);
        })
       });

       req.on("end",function(chunk){
                    // Logic
       });
 });

第二种方式(快速方式)是从请求的正文中获取参数。

  app.post('/',function(req,res){
       const name = req.body.name;
    
    });

据我了解,如果发布的数据较小,我们可以使用Body来获取数据,如果发布的数据较大,我们可以切换到Buffer。

对此还有其他很好的解释吗?

解决方法

Express只是一个环绕香草HTTP库的库。如果您阅读expressjs源代码,那么它仍然是Node HTTP库。当主体太大时,可以使用流连续有效地写入数据。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...