https://github.com/rohanrhu/json-tcp-socket
JSON messaging over TCP sockets for Node.js
https://github.com/rohanrhu/json-tcp-socket
communication-library json json-message messaging-library nodejs
Last synced: about 2 months ago
JSON representation
JSON messaging over TCP sockets for Node.js
- Host: GitHub
- URL: https://github.com/rohanrhu/json-tcp-socket
- Owner: rohanrhu
- License: mit
- Created: 2015-01-31T16:27:07.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2017-01-16T02:09:41.000Z (over 8 years ago)
- Last Synced: 2025-03-19T03:43:53.618Z (2 months ago)
- Topics: communication-library, json, json-message, messaging-library, nodejs
- Language: JavaScript
- Homepage: https://www.npmjs.com/package/json-tcp-socket
- Size: 12.7 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# json-tcp-socket
JSON messaging over TCP sockets for node.js[]()
#### Install with npm
```bash
npm install json-tcp-socket
```#### Without TLS
Server:
```javascript
var JSONTCPSOCKET = require('json-tcp-socket');var JSONTCPSOCKET = new JSONTCPSOCKET({tls: false});
var server = new JSONTCPSOCKET.Server();server.on('connection', function (socket) {
console.log('client connected: ', socket.socket.remoteAddress);socket.on('data', function (data) {
console.log('json:', data.item);
});var a = {item: 'A', a: 'asda'};
var b = {item: 'B', b: 'asdasa'};
var c = {item: 'asdadsadsadsasd87a8ds7ads67ad6sa6dsa', a: 1, b: 2, c: 3, d: 'asda', d: 'asdadsa'};
var d = '{"item": "asdaasda", "a": "1", "b": "2", "c": "3", "d": "asda", "d": "asdasda"}';
var e = '{"item": "ee", "a": "1", "d": "643", "d": "123"}';
var f = '{"item": "dd", "a": "1", "d": "643", "d": "123"}';socket.write(a);
socket.write(a);
socket.write(a);
socket.write(b);setInterval(function () {
socket.write(e);
}, 1000);setInterval(function () {
socket.write(f);
}, 1500);socket.write(d);
socket.write(c);
socket.write(b);
socket.write(b);
});server.listen(5055, '0.0.0.0');
console.log('Server listening 0.0.0.0:5055');
```Client:
```javascript
var JSONTCPSOCKET = require('json-tcp-socket');var JSONTCPSOCKET = new JSONTCPSOCKET({tls: false});
var socket = new JSONTCPSOCKET.Socket();socket.on('connect', function () {
console.log('connected');socket.on('data', function (data) {
console.log('json:', data.item);
});var a = {item: 'A', a: 'asda'};
var b = {item: 'B', b: 'asda'};
var c = {item: 'asda', a: 1, b: 2, c: 3, d: 'asda', d: 'asda'};
var d = '{"item": "98989182391829381", "a": "1", "b": "2", "c": "3", "d": "asda", "d": "1231321"}';
var e = '{"item": "ee", "a": "1", "d": "643", "d": "123"}';
var f = '{"item": "dd", "a": "1", "d": "643", "d": "123"}';socket.write(a);
socket.write(d);
socket.write(b);setInterval(function () {
socket.write(e);
}, 1000);setInterval(function () {
socket.write(f);
}, 1500);socket.write(b);
socket.write(a);
socket.write(a);
socket.write(a);
socket.write(c);
});socket.connect(5055, '127.0.0.1');
```#### TLS
Server:
```javascript
var fs = require('fs');
var JSONTCPSOCKET = require('json-tcp-socket');var JSONTCPSOCKET = new JSONTCPSOCKET({tls: true});
var server = new JSONTCPSOCKET.Server({
key: fs.readFileSync(__dirname+'/cert/tls.key'),
cert: fs.readFileSync(__dirname+'/cert/tls.crt')
});server.on('secureConnection', function (socket) {
console.log('client connected: ', socket.socket.remoteAddress);socket.on('data', function (data) {
console.log('json:', data.item);
});var a = {item: 'A', a: 'asdasda'};
var b = {item: 'B', b: 'asdasda'};
var c = {item: '1231', a: 1, b: 2, c: 3, d: '1231321', d: '1231321'};
var d = '{"item": "98989182391829381", "a": "1", "b": "2", "c": "3", "d": "1231", "d": "1231231"}';
var e = '{"item": "ee", "a": "1", "d": "643", "d": "123"}';
var f = '{"item": "dd", "a": "1", "d": "643", "d": "123"}';socket.write(a);
socket.write(a);
socket.write(a);
socket.write(b);setInterval(function () {
socket.write(e);
}, 1000);setInterval(function () {
socket.write(f);
}, 1500);socket.write(d);
socket.write(c);
socket.write(b);
socket.write(b);
});server.listen(5055, '0.0.0.0');
console.log('Server listening 0.0.0.0:5055 over TLS');
```Client:
```javascript
var JSONTCPSOCKET = require('json-tcp-socket');var JSONTCPSOCKET = new JSONTCPSOCKET({tls: true});
var socket = new JSONTCPSOCKET.Socket();socket.on('secureConnect', function () {
console.log('connected');socket.on('data', function (data) {
console.log('json:', data.item);
});var a = {item: 'A', a: 'asda'};
var b = {item: 'B', b: 'asda'};
var c = {item: '1231', a: 1, b: 2, c: 3, d: '1231', d: '1231'};
var d = '{"item": "1231", "a": "1", "b": "2", "c": "3", "d": "123", "d": "123132"}';
var e = '{"item": "ee", "a": "1", "d": "643", "d": "123"}';
var f = '{"item": "dd", "a": "1", "d": "643", "d": "123"}';socket.write(a);
socket.write(d);
socket.write(b);setInterval(function () {
socket.write(e);
}, 1000);setInterval(function () {
socket.write(f);
}, 1500);socket.write(b);
socket.write(a);
socket.write(a);
socket.write(a);
socket.write(c);
});socket.connect({
port: 5055,
host: '127.0.0.1',
rejectUnauthorized: false
});
```## License
MIT