35 lines
934 B
JavaScript
35 lines
934 B
JavaScript
|
/* A quite detailed WebSockets example */
|
||
|
|
||
|
const uWS = require('../dist/uws.js');
|
||
|
const port = 9001;
|
||
|
|
||
|
const app = uWS./*SSL*/App({
|
||
|
key_file_name: '/home/alexhultman/key.pem',
|
||
|
cert_file_name: '/home/alexhultman/cert.pem',
|
||
|
passphrase: '1234'
|
||
|
}).ws('/*', {
|
||
|
/* Options */
|
||
|
compression: 0,
|
||
|
maxPayloadLength: 16 * 1024 * 1024,
|
||
|
/* Handlers */
|
||
|
open: (ws, req) => {
|
||
|
console.log('A WebSocket connected via URL: ' + req.getUrl() + '!');
|
||
|
},
|
||
|
message: (ws, message, isBinary) => {
|
||
|
/* Ok is false if backpressure was built up, wait for drain */
|
||
|
let ok = ws.send(message, isBinary);
|
||
|
},
|
||
|
drain: (ws) => {
|
||
|
console.log('WebSocket backpressure: ' + ws.getBufferedAmount());
|
||
|
},
|
||
|
close: (ws, code, message) => {
|
||
|
console.log('WebSocket closed');
|
||
|
}
|
||
|
}).listen(port, (token) => {
|
||
|
if (token) {
|
||
|
console.log('Listening to port ' + port);
|
||
|
} else {
|
||
|
console.log('Failed to listen to port ' + port);
|
||
|
}
|
||
|
});
|