【发布时间】:2019-06-18 23:49:09
【问题描述】:
'use strict';
const http = require('http');
const fs = require('fs');
http.createServer((req, res) => {
(async () => {
await (new Promise((resolve, reject) => setTimeout(resolve, 10000)));
console.log('recv...');
req.setEncoding('utf8');
req.on('data', (chunk) => {
fs.writeFileSync('test.txt', chunk, { flag: 'a' });
});
req.on('end', () => {
res.end();
});
})();
}).listen(23380, '0.0.0.0');
当未设置“on data”事件监听器时,nodejs http 模块(或一般的 http 协议)会做什么?
扔掉包裹(会不会丢包裹)?
或者将包存储在内存中(它会吃掉我所有的内存)吗?
或者告诉客户“嘿,我不想要你的包裹。稍后再寄给我”?
它是如何工作的?
如果您能提供一些参考资料(源代码或文档),我将不胜感激。
【问题讨论】: