首页 > 代码库 > 简化连接Buffer对象的过程

简化连接Buffer对象的过程

 

上述一大段代码仅只完成了一件事情,就是连接多个Buffer对象,而这种场景需求将会在多个地方发生,所以,采用一种更优雅的方式来完成该过程是必要的。笔者基于以上的代码封装出一个bufferhelper模块,用于更简洁地处理Buffer对象。可以通过NPM进行安装:

npm install bufferhelper 

下面的例子演示了如何调用这个模块。与传统data += trunk之间只是bufferHelper.concat(chunk)的差别,既避免了错误的出现,又使得代码可以得到简化而有效地编写。

var http = require(‘http‘);  var BufferHelper = require(‘bufferhelper‘);http.createServer(function (request, response) {    var bufferHelper = new BufferHelper();    request.on("data", function (chunk) {    bufferHelper.concat(chunk);    });    request.on(‘end‘, function () {    var html = bufferHelper.toBuffer().toString();    response.writeHead(200);    response.end(html);    });}).listen(8001); 

所以关于Buffer对象的操作的最佳实践是:

  • 保持编码不变,以利于后续编码转换
  • 使用封装方法达到简洁代码的目的