2016-04-12 24 views
0

我想通过Http响应发送缓冲区,但在客户端上,我将它作为字符串而不是缓冲区接收。我用expressjs路由器,如下面的代码Nodejs + expressjs将http响应作为缓冲区

router.get('/', function(req, res, next) { 
    const buf = new Buffer('Hello world'); 
    console.log(buf); // gives me <Buffer 48 65 6c 6c 6f 20 77 6f 72 6c 64> 
    res.send(buf); // gives me 'Hello world' 
}); 

在上面的代码我预期的结果是缓冲(),但我得到的字符串输出的“Hello World。

有人帮我一把。提前致谢。

+1

客户端对NodeJS“缓冲区”一无所知,所以无法使用它。 – alexmac

+0

你期望收到什么_exactly_?缓冲区内容的十六进制表示? – robertklep

+0

缓冲区内容如下

回答

1

如快速文档中提到,http://expressjs.com/en/api.html

当参数是一个缓冲区对象,该方法将内容类型 响应报头字段为“application /八位字节流”

取决于您的浏览器,有些可能会将响应下载为文件(例如Chrome),有些可能会读取流并直接显示内容(如IE11)。

相关问题