This plugin just exposes httpServer without any dependencies. In theory, you can use any websocket framework you like.
npm install vite-sveltekit-node-wsRangeError: Invalid WebSocket frame: invalid status code xxxx,
ts
//vite.config.ts
export default defineConfig({
plugins: [sveltekit(),ws()],
server:{
hmr:{
port:5678
}
}
});
`
$3
- dev
- preview
- online
$3
vite.config.ts
`ts
import { sveltekit } from '@sveltejs/kit/vite';
import { defineConfig } from 'vitest/config';
import ws from 'vite-sveltekit-node-ws';
export default defineConfig({
plugins: [sveltekit(), ws()]
});
`
hooks.server.ts
`ts
import {useServer} from "vite-sveltekit-node-ws";
import {WebSocketServer} from 'ws'
useServer((server) => {
const ss = new WebSocketServer({server})
ss.on('connection',a=>{
a.on('message',e=>{
a.send(echo: ${e})
})
})
},(pathname:string)=>{
// It is optional
// You can block some requests to prevent them from being processed by SveltetKit
// return pathname.startsWith('/hello')
return false
})
`
$3
`ts
import wsPlugin, {useServer} from "vite-sveltekit-node-ws";
`
$3
`ts
serverHandle: ( server ) => void
pathHandle?: ( pathname: string ) => boolean
``