3、客户端给服务端发消息和服务端主动推送消息

雨点打透心脏的1/2处 2022-05-16 06:53 380阅读 0赞

70

index.html

  1. <!--
  2. 客户端
  3. -->
  4. <!DOCTYPE html>
  5. <html lang="en">
  6. <head>
  7. <meta charset="UTF-8">
  8. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  9. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  10. <title>Document</title>
  11. </head>
  12. <body>
  13. <script>
  14. /**
  15. * 这里我们创建一个WebSocket,里面填上服务端连接及端口号
  16. * ws 表示它的协议
  17. *
  18. */
  19. var ws = new WebSocket('ws://localhost:2333');
  20. /**
  21. * 当链接建立的时候,它有一个onopen事件
  22. */
  23. ws.onopen = function(){
  24. // 客户端发送信息给服务端
  25. ws.send('来自客户端的信息');
  26. }
  27. /**
  28. * 客户端接受服务端的消息
  29. */
  30. ws.onmessage = function(e){
  31. console.log(e.data);
  32. }
  33. </script>
  34. </body>
  35. </html>

app.js

  1. /**
  2. * 服务端
  3. */
  4. /**
  5. * 1 将nodejs-websock包引进来
  6. */
  7. var ws = require('nodejs-websocket');
  8. /**
  9. * 2 创建一个WebSocket服务,建立TCP连接,
  10. * conn就是连进来的连接
  11. * server 监听2333端口
  12. */
  13. var server = ws.createServer(function(conn){
  14. console.log('New connection'); // 表示新的连接进来了
  15. /**
  16. * conn绑一个text事件,并接受一个回调
  17. */
  18. conn.on('text', function(str){
  19. console.log(str);
  20. });
  21. /**
  22. * 等待5秒 主动给客户端推送一条消息
  23. */
  24. setTimeout(function(){
  25. // 给客户端发送消息
  26. conn.sendText('来自服务端的消息');
  27. },5000);
  28. }).listen(2333);

运行程序,点击【调试】,【启动调试】

70 1

打开页面,等等5秒

70 2

发表评论

表情:
评论列表 (有 0 条评论,380人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Spring Boot:服务实时消息

    在 HTTP/1.1 及以前的版本里,客户端、服务端之间的通讯模式只支持一种请求-响应模式,这是一种半双工通讯模式。 而且,在这个模型中,服务端是“被动方”,只能响应用户的请求

    相关 [Java] 服务消息汇总

    > 前言:当构建实时消息推送功能时,选择适合的方案对于开发高效的实时应用至关重要。消息的推送无非就推、拉两种数据模型。本文将介绍四种常见的消息实时推送方案:短轮询(拉)、长轮训