npm.io
1.3.1 • Published 2 months ago

@hono/node-ws

Licence
MIT
Version
1.3.1
Deps
1
Size
32 kB
Vulns
0
Weekly
0
Stars
967

WebSocket helper for Node.js

codecov

This package is deprecated. Node.js Adapter v2 (@hono/node-server) now provides built-in WebSocket support via its own upgradeWebSocket. Please migrate to @hono/node-server. See WebSocket | @hono/node-server for details.

A WebSocket helper for Node.js

Migration to @hono/node-server

Before:

import { createNodeWebSocket } from '@hono/node-ws'
import { Hono } from 'hono'
import { serve } from '@hono/node-server'

const app = new Hono()

const { injectWebSocket, upgradeWebSocket } = createNodeWebSocket({ app })

app.get(
  '/ws',
  upgradeWebSocket((c) => ({
    // https://hono.dev/helpers/websocket
  }))
)

const server = serve(app)
injectWebSocket(server)

After:

import { serve, upgradeWebSocket } from '@hono/node-server'
import { WebSocketServer } from 'ws'
import { Hono } from 'hono'

const app = new Hono()

app.get(
  '/ws',
  upgradeWebSocket((c) => ({
    // https://hono.dev/helpers/websocket
  }))
)

const wss = new WebSocketServer({ noServer: true })
serve({
  fetch: app.fetch,
  websocket: { server: wss },
})

Usage

import { createNodeWebSocket } from '@hono/node-ws'
import { Hono } from 'hono'
import { serve } from '@hono/node-server'

const app = new Hono()

const { injectWebSocket, upgradeWebSocket } = createNodeWebSocket({ app })

app.get(
  '/ws',
  upgradeWebSocket((c) => ({
    // https://hono.dev/helpers/websocket
  }))
)

const server = serve(app)
injectWebSocket(server)

Author

Shotaro Nakamura https://github.com/nakasyou

License

MIT