gpt4 book ai didi

Node.js 流式传输 gzip http 响应

转载 作者:太空宇宙 更新时间:2023-11-03 23:43:46 28 4
gpt4 key购买 nike

我正在尝试使用 gzip 分块发送响应,但从以下示例中我在 Chrome 中收到“Hello�S�/�I�m��S��k�”,而不是“Hello World!”

var http = require('http'),
zlib = require('zlib');

http.createServer(function(req, res) {
res.writeHead(200, {
'Content-Type': 'html/text',
'Transfer-Encoding': 'chunked',
'Content-Encoding': 'gzip',
'Content-Type': 'text/html;charset=UTF-8'
});

zlib.gzip("Hello", function(_, result) {
res.write(result);
});

zlib.gzip(" World", function(_, result) {
res.write(result);
});

zlib.gzip('!', function(_, result) {
res.end(result);
});

}).listen(1337, '127.0.0.1');

console.log('Server running at http://127.0.0.1:1337/');

最佳答案

这不是分块传输编码的含义。

请参阅description in the HTTP standard 。简而言之,分块编码由具有 ASCII 十六进制 block 长度的 block 组成,后跟一个 CRLF,然后是那么多字节,然后是另一个 CRLF。重复,以零长度 block 结束,并在零长度 block CRLF 之后使用另一个 CRLF 以进行良好测量。

关于Node.js 流式传输 gzip http 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17935753/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com