Skip to content

Instantly share code, notes, and snippets.

@maripiyoko
Last active June 7, 2021 11:48
Show Gist options
  • Star 9 You must be signed in to star a gist
  • Fork 7 You must be signed in to fork a gist
  • Save maripiyoko/4874e67ed9f8e8b20130 to your computer and use it in GitHub Desktop.
Save maripiyoko/4874e67ed9f8e8b20130 to your computer and use it in GitHub Desktop.
Node.js Tcp server & Socket.io
// socket io
var app = require('http').createServer(handler),
io = require('socket.io').listen(app),
fs = require('fs');
app.listen(3000, function() {
console.log('Socket IO Server is listening on port 3000');
});
function handler(req, res) {
fs.readFile(__dirname + '/index.html', function(err, data) {
if(err) {
res.writeHead(500);
return res.end('Error');
}
res.writeHead(200);
res.write(data);
res.end();
})
};
// 待ち受け
io.sockets.on('connection', function(socket) {
console.log('connection...');
socket.on('emit_from_client', function(data) {
console.log('socket.io server received : '+data);
// 接続しているソケット全部
io.sockets.emit('emit_from_server', data);
});
});
// TCP server
var net = require('net');
var writable = require('fs').createWriteStream('test.txt');
net.createServer(function (socket) {
console.log('socket connected');
socket.on('data', function(data) {
var line = data.toString();
console.log('got "data"', line);
socket.pipe(writable);
io.sockets.emit('emit_from_server', line); // socket.io呼び出し
});
socket.on('end', function() {
console.log('end');
});
socket.on('close', function() {
console.log('close');
});
socket.on('error', function(e) {
console.log('error ', e);
});
socket.write('hello from tcp server');
}).listen(3080, function() {
console.log('TCP Server is listening on port 3080');
});
@sajadonline
Copy link

big like dear :x

@shingom1028
Copy link

こんにちは、こちらのindex.htmlのファイルって閲覧することできますか?
JSのwebページの作り方が全然わからず、参考にしたいので...

@mojo2405
Copy link

mojo2405 commented Jan 3, 2018

THANKS ALOT !

@weylert
Copy link

weylert commented Oct 29, 2018

really nice. thanks a lot

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment