下面就为您详细讲解“node.js中的http.response.addTrailers方法使用说明”的完整攻略。
1. http.response.addTrailers方法是什么
http.response.addTrailers()
方法可以将一个哈希头对象(trailer)添加到响应的已经发送的部分。这些头信息只有在请求的主体结束时才会被发送。http.response.addTrailers()
方法只能在响应的主体已经被发送后,并且响应头已经被发送时才可以使用。除此之外,它和其他添加响应头的方法没有区别,通过调用它添加的哈希头对象会在响应的主体结束后发送到客户端。
2. http.response.addTrailers方法的语法
http.response.addTrailers(headers)
参数:
- headers:用于添加到响应头的object类型的普通头或trailer头。trailer头信息只会在请求主体发送后才会被发送到客户端。
3. http.response.addTrailers方法的示例
示例一
以下例子创建了一个 HTTP 服务器,它返回一个使用了 addTrailers()
的响应。可以使用 curl -v
命令来看到 trailers (header) 的效果:
const http = require('http');
const server = http.createServer((req, res) => {
res.writeHead(200, { 'Content-Type': 'text/plain',
'Trailer': 'Content-MD5' });
res.write('hello, world!');
res.addTrailers({'Content-MD5': '7895bf4b8828b55ceaf47747b4bca667'});
res.end();
});
server.listen(8000);
示例二
以下是将 addTrailers()
用于在请求主体的结束和 trailer 发送之间更新 Content-Length
首部的示例:
const http = require('http');
const fs = require('fs');
const server = http.createServer((req, res) => {
const rs = fs.createReadStream('file.txt');
res.writeHead(200, {'Content-Length': '10000', 'Content-Type': 'text/plain', 'Trailer': 'Content-MD5'});
rs.pipe(res, { end: false });
rs.on('end', () => {
res.addTrailers({'Content-MD5': '7895bf4b8828b55ceaf47747b4bca667'});
res.end();
});
});
server.listen(8000);
以上就是“node.js中的http.response.addTrailers方法使用说明”的完整攻略,希望对您有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:node.js中的http.response.addTrailers方法使用说明 - Python技术站