Javascript http.ClientRequest套接字不';不发出数据事件
我想使用http模块。唯一的方法(IMO)是向套接字数据事件添加侦听器。但它似乎不起作用 下面是一个代码示例Javascript http.ClientRequest套接字不';不发出数据事件,javascript,node.js,http,Javascript,Node.js,Http,我想使用http模块。唯一的方法(IMO)是向套接字数据事件添加侦听器。但它似乎不起作用 下面是一个代码示例 var http=require('http'); var request=http.request('http://nodejs.org/'); request.end(); 请求.on('socket',函数(socket){ socket.once('data',函数TTFB(){ console.log(“永不发生”); }); }); 请求.on('response',函数(r
var http=require('http');
var request=http.request('http://nodejs.org/');
request.end();
请求.on('socket',函数(socket){
socket.once('data',函数TTFB(){
console.log(“永不发生”);
});
});
请求.on('response',函数(response){
console.log('status code',response.statusCode');
on('data',函数noop(){});
on('end',function(){
log('Bytes read',request.socket.bytesRead);
});
});
套接字没有数据事件。尝试在connect上收听
request.on('socket', function(socket) {
socket.once('connect', function TTFB() {
//Socket has been assigned to a request.
});
});
通过检查套接字对象,可以看到套接字发出的事件
_events: {
end: {
[Function: g] listener: [Function: onend]
},
finish: [Function: onSocketFinish],
_socketEnd: [Function: onSocketEnd],
free: [Function],
close: [
[Function],
[Function: socketCloseListener]
],
agentRemove: [Function],
drain: [Function: ondrain],
error: [Function: socketErrorListener],
connect: {
[Function: g] listener: [Function]
}
}
如果插座没有,那么谁会呢?连接不是一个选项。TTFB是(从服务器)到第一个字节的时间。顺便说一句,net.Socket确实有一个。