1.6.6 • Published 1 year ago

socket-request-server v1.6.6

Weekly downloads
19
License
MIT
Repository
github
Last release
1 year ago

socket-request-server

Simple WebSocket request/response server

INSTALL

npm i --save socket-request-server

usage

basic

import server from 'socket-request-server'
server({port: 6000}, {
  date: ({send}) => response.send(new Date())  
});

Custom http server

import { server } from 'socket-request-server'
import { createServer } from 'http' // optional

const httpServer = createServer(); // define your own http server
server({httpServer, port: 6000}, {
  user: ({email, password}, response) => {
    // response.connection.socket._peername
    if (!email || !password) {
      response.error(`Expected email & password to be defined`)
    } else {
      // do something
      response.send('some value')
    }
  }
});

customEvent

import server from 'socket-request-server'

server({port: 6000}, {
  // does nothing when a customEvent is detected
  ping: ({email, password}, response) => {
    response.send(true)
  }
});

const connection = server.connections()[0]
const messageId = uuid();

const data = JSON.stringify({
  url: 'ping',
  status: 200,
  value: message,
  id: messageId,
  customMessage: true
});

const onmessage = message => {
  let data;
  if (message.type) {
    switch (message.type) {
      case 'binary':
        data = message.binaryData.toString();
        break;
      case 'utf8':
        data = message.utf8Data;
        break;
    }
  }
  
  const { route, params, url, id } = JSON.parse(data);          
  if (id === messageId) {
    // do something ...
    connection.removeListener('message', onmessage)
  }
}
connection.on('message', onmessage)
connection.send(data)
1.6.4

1 year ago

1.6.6

1 year ago

1.6.5

1 year ago

1.6.3

1 year ago

1.6.2

1 year ago

1.6.1

1 year ago

1.6.0

1 year ago

1.5.2

2 years ago

1.5.1

2 years ago

1.5.0

4 years ago

1.1.2

4 years ago

1.1.1

4 years ago

1.1.0

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago

0.6.1

5 years ago

0.6.0

5 years ago

0.5.1

5 years ago

0.5.0

6 years ago

0.4.2

6 years ago

0.4.1

6 years ago

0.4.0

6 years ago

0.2.2

6 years ago

0.2.1

6 years ago

0.2.0

6 years ago