nodejs - ¿Cómo destruir una conexión http.request de Node.js?
node js module http (1)
Si lo ejecuto en la línea de comando, el programa se detendrá después de client.destroy ();
var client = http.get(options,
function(res) {
console.log(res.statusCode);
client.destroy();
}
);
Sin embargo, no es el caso cuando pongo client.destroy () dentro de res.on (''end''):
var client = http.get(options,
function(res) {
console.log(res.statusCode);
res.on(''end'', function() {
console.log("done");
client.destroy();
});
}
);
Lanzará una excepción porque el http.socket es nulo. entonces, no puedo destruirlo
En este caso, la ejecución del programa se bloqueará allí y no terminará. ¿Qué puedo hacer para detenerlo? (que no sea process.exit ());
si se trata de una solicitud única, simplemente puede configurar shouldKeepAlive como falso
var request = http.get(options,
function(res) {
console.log(res.statusCode);
}
);
request.shouldKeepAlive = false
o enviar Connection: close
encabezado
No puede acceder al socket porque está separado en el controlador de eventos ''end'' de la solicitud