The 'data'
event from net.Socket
can be used to read data received from a socket, for example:
const net = require('net');
const server = net.createServer((socket) => {
socket.on('data', (buffer)=>{
console.log(`Server received ${buffer}`)
socket.write('World');
});
});
server.listen(8080, '127.0.0.1');
const socket = new net.Socket();
socket.on('data', (buffer) => {
console.log(`Client received ${buffer}`)
});
socket.connect(8080, '127.0.0.1');
setTimeout(()=>{
socket.write('Hello');
},100);
setTimeout(()=>{
socket.write('Hi');
},200);
setTimeout(()=>{
console.log('Goodbye.');
socket.destroy();
server.close();
},300);
Prints:
Server received Hello
Client received World
Server received Hi
Client received World
Goodbye.
Is there a way read data sent out from a socket? For example if server
was a remote server, is there a way to capture the data sent to the server from the socket using events or any another method?
from Capturing data written to a Node.js socket
No comments:
Post a Comment