欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

NodeJS简单实现WebSocket功能示例

程序员文章站 2022-09-12 23:49:51
本文实例讲述了nodejs简单实现websocket功能。分享给大家供大家参考,具体如下: 我们基于express和socket.io开发,首先我们需要安装以下包...

本文实例讲述了nodejs简单实现websocket功能。分享给大家供大家参考,具体如下:

我们基于expresssocket.io开发,首先我们需要安装以下包

npm install --save express
npm install --save socket.io

服务器端代码:

var app = require('express')();
var http = require('http').server(app);
var io = require('socket.io')(http);
app.get('/', function(req, res){
  res.send('<h1>welcome realtime server</h1>');
});
io.on('connection', function(socket){
  console.log('a user connected');
  socket.on("disconnect", function() {
    console.log("a user go out");
  });
  socket.on("message", function(obj) {
    io.emit("message", obj);
  });
});
http.listen(3000, function(){
  console.log('listening on *:3000');
});

客户端代码

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>document</title>
  <script src="http://127.0.0.1:3000/socket.io/socket.io.js"></script>
</head>
<body>
  <ul id="message"></ul>
  <script>
    socket = io.connect('ws://127.0.0.1:3000');
    socket.emit("message", {"name" : navigator.useragent, "msg" : "hello world"});
    socket.on("message", function(obj) {
      console.log(obj);
    });
  </script>
</body>
</html>

一个控制台版的聊天室做好了(^o^)/~

希望本文所述对大家nodejs程序设计有所帮助。