gpt4 book ai didi

node.js - 如何测试 Node 服务器请求流的 'error' 和 'close' 事件?

转载 作者:可可西里 更新时间:2023-11-01 16:37:32 26 4
gpt4 key购买 nike

我们的服务器出现生产问题,request stream for an incoming HTTP request没有得到 end 事件;大概有一个 errorclose 事件,而不是通过请求/连接中的一些错误。

我的问题是:

  1. 什么会导致 HTTP 请求中的 errorclose 事件?
  2. 如何编写集成测试(或未通过单元测试)来测试这些条件?

最佳答案

我发现我可以通过退出进程而不调用 res.end() 来模拟过早关闭的请求,这会触发服务器上的 close 事件(end 事件永远不会被调用):

var http = require('http');

var options = {
host: 'localhost',
path: '/',
method: 'POST',
port: 3000
};
var req = http.request(options, function(res) {});

req.write('123');

setTimeout(function() {
process.exit();
}, 100);

我仍然不知道如何触发一个错误事件。

关于node.js - 如何测试 Node 服务器请求流的 'error' 和 'close' 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29613411/

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