Skip to content

Latest commit

 

History

History
58 lines (37 loc) · 1.46 KB

README.md

File metadata and controls

58 lines (37 loc) · 1.46 KB

fastify-simple-ws

Build Status npm version

WebSocket support for Fastify built on the blazing fast ws library (removed uws support).

Example

In server.js:

'use strict'

const fastify = require('fastify')()

fastify.register(require('fastify-ws'))

fastify.ready(err => {
  if (err) throw err

  console.log('Server started.')

  fastify.ws
    .on('connection', socket => {
      console.log('Client connected.')

      socket.on('message', msg => socket.send(msg)) // Creates an echo server

      socket.on('close', () => console.log('Client disconnected.'))
    })
})

fastify.listen(34567)

Then run node server.js and navigate to http://localhost:34567 in your browser. In the browser's JavaScript console, open a client-side WebSocket connection:

const host = location.origin.replace(/^http/, 'ws')
const ws = new WebSocket(host)
ws.onmessage = msg => console.log(msg.data)

Then, still in the browser console, send some messages to the server and watch as they're echoed back to you:

ws.send('WebSockets are awesome!')
// => undefined
// LOG: WebSockets are awesome!

Notes

This forked version removes the support for uws.

License

Licensed under MIT.