【发布时间】:2018-12-29 01:26:18
【问题描述】:
我想直接向客户端发送一个 Windows Azure Blob(图像);我正在尝试这个:
blobService.getBlobToStream('images', req.url, res, function(err, blob) {
if (!err) {
res.writeHead(200, { 'Content-Type': blob.contentType });
} else {
res.writeHead(200, { 'Content-Type': 'text/plain' });
res.end(err);
}
});
我正在尝试将 Blob 流直接通过管道传输到响应流;这应该工作吗?在 Firefox 中,我收到一条消息:“图像无法显示,因为它包含错误”。看Firebug,图片大小为0。
【问题讨论】:
-
可能是个愚蠢的问题,但为什么要通过自己的托管服务流式传输 blob?为什么不直接将 blob URL 返回给客户端或将它们重定向到 BLOB URL 并让它们自己通过执行 HTTP GET 流式传输它。这将为您节省自己缓冲/重新流式传输的托管成本。对于大量的 blob 数据,这可以为您节省很多钱。
-
说得好,迈克,但我希望汤姆正在尝试。
-
是的,我们的想法是在将 blob(图像)流回客户端之前对其进行转换(即重新调整大小);谢谢理查德!