Aedes WebSocket
跟 Aedes 基础结构一致,但关掉 TCP,broker 监听在 ws://localhost:8888/mqtt。适合浏览器端 MQTT 客户端(mqtt.js over WebSocket)。
bash
bun run --cwd examples/aedes-ws dev源码
ts
import { aedes } from '@mqttkit/aedes'
import { MqttApp, router } from '@mqttkit/core'
const app = new MqttApp()
.use(
aedes({
tcp: false,
ws: { port: 8888, path: '/mqtt' },
}),
)
.use(
router()
.topic('browser/:clientId/ping', {
async onMessage(ctx) {
await ctx.publish(`browser/${ctx.params.clientId}/pong`, ctx.payload, { qos: 0 })
},
})
.topic('browser/:clientId/pong'),
)
await app.listen()
console.log('mqttkit Aedes WS example listening on ws://localhost:8888/mqtt')