返回介绍

配置 Socket.io 服务

发布于 2025-02-17 12:51:31 字数 1191 浏览 0 评论 0 收藏 0

我们的应用服务端用来为一个提供投票和显示结果浏览器端提供服务的,为了这个目的,我们需要考虑两端通信的方式。

这个应用需要实时通信,这确保我们的投票者可以实时查看到所有人的投票信息。为此,我们选择使用 WebSockets 作为
通信方式。因此,我们选择 Socket.io 库作为跨终端的 websocket 抽象实现层,它在客户端
不支持 websocket 的情况下提供了多种备选方案。

让我们在项目中加入 Socket.io:

npm install --save socket.io

现在,让我新建一个 server.js 文件:

//src/server.js

import Server from 'socket.io';

export default function startServer() {
const io = new Server().attach(8090);
}

这里我们创建了一个 Socket.io 服务,绑定 8090 端口。端口号是我随意选的,你可以更改,但后面客户端连接时
要注意匹配。

现在我们可以在 index.js 中调用这个函数:

//index.js

import makeStore from './src/store';
import startServer from './src/server';

export const store = makeStore();
startServer();

我们现在可以在 package.json 中添加 start 指令来方便启动应用:

//package.json
"scripts": {
    "start": "babel-node index.js",
    "test": "mocha --compilers js:babel/register  --require ./test/test_helper.js  --recursive",
    "test:watch": "npm run test --watch"
},

这样我们就可以直接执行下面命令来开启应用:

npm run start

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文