静态资源

参考: Serving static files in Express

import express from "express"

const app = express()

app.use(express.static('public'))

websocket

采用 ws

npm install --save ws

若是想让 express 与 websocket 共用一个端口

可以看下面这个例子:

import express from 'express'
import { WebSocketServer } from 'ws';
import { createServer } from 'http'

// import expressWs from 'express-ws' // 这个库很就没有维护了, 不建议使用

const PORT = 3000

const server = createServer()
const app = express()

// websocket
const wsServer = new WebSocketServer({ server });
wsServer.on('connection', socket => {
    console.log('ws: Get an connection');

    socket.on('message', message => console.log(message.toString()));

    setInterval(() => {
        socket.send("I'm server, send you message for every 3 seconds.")
    }, 3000)
});

// 让 websocket 与 http 服务器端口一致
server.on('request', app)
server.listen(PORT, () => {
    console.log(`listen: ${PORT}\nlink: http://127.0.0.1:${PORT}`);
})

该部分仅登录用户可见

最后修改:2024 年 11 月 21 日
如果觉得我的文章对你有用,请随意赞赏