当前位置 : 主页 > 网页制作 > Nodejs >

Node.js通过套接字发送HTTP的二进制数据

来源:互联网 收集:自由互联 发布时间:2021-06-16
我正在编写自己的http模块(我知道node.js包含一个) 我正在使用网络模块 当我收到静态二进制(图片)文件的请求时,如何使用二进制文件生成HTTP响应? 当我为文本文件(例如.html文件)做到这
我正在编写自己的http模块(我知道node.js包含一个)
我正在使用网络模块
当我收到静态二进制(图片)文件的请求时,如何使用二进制文件生成HTTP响应?
当我为文本文件(例如.html文件)做到这一点时,它只是工作.. 如果您使用的是net模块,则可能使用的代码如下:

var server = net.createServer(function (socket) { 
});

什么是插座?它代表网络上的数据流.
在对象中,Socket是一个WriteableStream,在这里阅读更多:http://nodejs.org/docs/v0.6.5/api/streams.html

在读取文件时,可以将内容作为String,Buffer或ReadableStream获取

将文件作为流读取的最简单方法是使用函数:http://nodejs.org/docs/v0.6.5/api/fs.html#fs.createReadStream
例如

var fileAsAstream = fs.createReadStream(filePath);

为了将二进制读取流的内容传输到写入流,您可以使用管道功能http://nodejs.org/docs/v0.6.5/api/streams.html#stream.pipe功能
例如

fileAsAstream.pipe(socket);
网友评论