用户登录

在服务端这里我们可以注册一些 Websocket 的频道 .. 前端可以订阅这些不同的频道 .. 在服务端这里注册的频道要放在 start .. socket.js 这里 ..

用一下 Ws.channel .. 注册一个新的频道 .. 名字可以是 demo ... 然后我们可以设置一下它的处理的方法或者控制器 ..

这里我们可以使用一个 Ws 类型的控制器来处理这个频道 .. 名字可以是 WsDemoController .. 回到命令行,再去创建这个控制器 .. aodnis .. make 一个 controller .. 名字是 WsDemo .. 控制器的类型 .. 选择 For Websocket channel ...

回到项目 .. 打开刚才创建的控制器 .. 项目的 Ws 类型的控制器是在 app .. Controllers .. Ws 目录的下面 .. 打开这个 WsDemoController ..

这里已经给我们准备好了一个 constructor 方法 .. 在这里,先用一个 console.log .. 在控制器上输出 socket 里的 id .. 表示 socket 唯一的标识 ..

再输出一个 socket 的 topic ,表示主题 .. 一个频道里面可以包含多个主题 .. 客户端那里可以选择订阅频道,或者频道里面的某个主题 ..

订阅

下面再去处理一下客户端的代码 .. 打开 ws-demo.js .. 成功连接到了 websocket 以后,可以再执行一下 subscribeToChannel 这个函数 ..

然后再去定义这个函数要做的事情 .. 名字是 subscribeToChannel .. 里面可以添加一个 demo .. 用一下 ws 上的 subscribe 去订阅指定的频道 .. 这里应该就是 demo 这个频道 ..

试验

再回到浏览器,刷新一下页面 . 连接成功以后 ..

再打开运行项目服务的这个命令行标签 ... 在这里,会输出一个 socket.id .. 还有一个 socket.topic ... 这个主题就是 demo ...

服务端:注册频道 - 客户端:订阅频道《 Node.js 应用:WebSocket 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点