【问题标题】:Node.js - How to get stream into stringNode.js - 如何将流转换为字符串
【发布时间】:2013-06-29 12:42:44
【问题描述】:

我有流,我需要将流内容转换为字符串。我使用 http.get 从互联网流式传输。我也将流写入文件,但我不想写入文件,然后打开同一个文件并从中读取...... 所以我需要将流转换为字符串 谢谢大家的建议...

【问题讨论】:

标签: string node.js stream node.js-stream


【解决方案1】:

不要使用第二个嵌套函数,而是尝试流上的 toString() 方法。然后可以将其通过管道传输到您想要的任何位置,您还可以编写一个 through() 方法,将其分配给一个变量或直接在一个函数中使用它。

var http = require('http');

var string = '';
var request = http.get('http://www.google.cz', function (err, data){
  if (err) console.log(err);
  string = data.toString();
  //any other code you may want
});
//anything else

最后一点——http.get() 方法有两个参数:url 和回调。这需要两个参数,而您可能一无所获,因为它是一个空的错误消息。

【讨论】:

  • 我认为这只适用于这里,因为 http.get 返回一个扩展流,通常可读流没有 toString 方法可以这种方式工作。
【解决方案2】:
var http = require('http');

var string = '';
var request = http.get("http://www.google.cz", function(response) {       
    response.on('data', function(response){
      string += response.toString();

  }); 
    response.on('end', function(string){
      console.log(string);
    });  
  });

这肯定有效。我正在使用它。

【讨论】:

    猜你喜欢
    • 2020-02-23
    • 1970-01-01
    • 1970-01-01
    • 2019-05-03
    • 2018-01-03
    • 2014-06-25
    • 1970-01-01
    相关资源
    最近更新 更多