Skip to content

Instantly share code, notes, and snippets.

@hechien
Created April 23, 2012 10:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save hechien/2470084 to your computer and use it in GitHub Desktop.
Save hechien/2470084 to your computer and use it in GitHub Desktop.
TCP Server by NodeJS
// 參考資料:
// trim: http://stackoverflow.com/questions/1418050/string-strip-for-javascript
// tcp server: http://www.giantflyingsaucer.com/blog/?p=952
// http://nodejs.org/api/net.html#net_socket_remoteaddress
if (typeof(String.prototype.trim) === "undefined") {
String.prototype.trim = function(){
return String(this).replace(/\r+|\n+|\s+|\s+$/g, '');
};
};
var net = require('net'), sys = require('util');
var server = net.createServer(function(stream){
stream.setEncoding("utf8");
stream.on('connect', function(){
stream.write("Hello\n\0");
sys.puts("Remote: "+stream.remoteAddress+" connected!");
sys.puts(sys.inspect(stream, false));
});
stream.on('data', function(data){
var _data = data.trim();
stream.write("You told me: "+data);
sys.puts(_data);
if (_data === "bye"){
stream.write("See you!\n");
stream.end();
}
stream.write("\0");
});
stream.on('end', function(){
stream.end();
});
});
server.listen(7736, '192.168.173.176');
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment