📅  最后修改于: 2023-12-03 15:33:09.485000             🧑  作者: Mango
在 Node.js HTTP/2 模块中,Http2ServerResponse.write()
方法用于将数据写入 HTTP/2 响应体中。本文将对该方法进行介绍。
response.write(chunk[, encoding][, callback])
参数说明:
Buffer
或 string
类型。utf8
。该方法返回一个布尔值,表示数据块是否被成功写入。
const http2 = require('http2');
const fs = require('fs');
const server = http2.createSecureServer({
key: fs.readFileSync('server.key'),
cert: fs.readFileSync('server.crt')
});
server.on('stream', (stream, headers) => {
stream.respond({
'content-type': 'text/html',
':status': 200
});
stream.write('<html><body>Hello World!</body></html>');
stream.end();
});
server.listen(8443);
在上述示例代码中,我们使用 http2.createSecureServer()
创建了一个基于 TLS 的 HTTP/2 服务器,并通过 server.on('stream', callback)
方法监听客户端发来的流。
在回调函数中,我们调用 stream.respond()
方法设置了响应头和响应状态码,并通过 stream.write()
将响应体写入到客户端。最后,我们调用 stream.end()
结束流。
最终,客户端会收到如下响应:
HTTP/2 200 OK
content-type: text/html
<html><body>Hello World!</body></html>
Http2ServerResponse.write()
方法是 Node.js HTTP/2 模块中用于将数据写入响应体的核心方法,要注意编码方式以及回调函数的使用。如果你需要构建一个基于 HTTP/2 的高效服务器,就一定离不开它的使用。