如何利用nodejs语法做一个即时通讯功能?下面web建站小编给大家简单介绍一下具体实现代码!
创建服务器
const app = require('express')(); const server = require('http').createServer(app); const io = require('socket.io')(server); const port = process.env.PORT || 3000; server.listen(port, () => { console.log(`Server listening at http://localhost:${port}`); });
监听连接和断开事件,发送消息
io.on('connection', (socket) => { console.log('a user connected'); socket.on('disconnect', () => { console.log('user disconnected'); }); socket.on('chat message', (msg) => { console.log('message: ' + msg); io.emit('chat message', msg); }); });
客户端页面代码
<html> <head> <title>Chat Room</title> </head> <body> <ul id="messages"></ul> <form action=""> <input id="m" autocomplete="off" /><button>Send</button> </form> <script src="/socket.io/socket.io.js"></script> <script> const socket = io(); const form = document.querySelector('form'); const input = document.querySelector('#m'); const messages = document.querySelector('#messages'); form.addEventListener('submit', (e) => { e.preventDefault(); // 防止页面跳转 socket.emit('chat message', input.value); // 将消息发送给服务器 input.value = ''; // 清空消息框 return false; }); socket.on('chat message', (msg) => { const li = document.createElement('li'); // 创建新条目 li.textContent = msg; // 设置新条目的文本内容 messages.appendChild(li); // 将新条目添加到列表中 }); </script> </body> </html>
nodejs如何利用Long-Polling实现实时发送数据
上面是“如何利用nodejs语法实现即时通讯”的全面内容,想了解更多关于 nodejs 内容,请继续关注web建站教程。
当前网址:https://ipkd.cn/webs_4505.html
workflows工作流
- 一只千纸鹤坐在路上哭泣ComfyUI工作流
- 外星人ComfyUI工作流
- 瀑布边坐着一位披着斗篷的隐士
- 海中一头鲸鱼ComfyUI工作流
- 一只蚂蚁在花丛中找食物ComfyUI工作流
- 一个男人正走进科幻的大门ComfyUI工作流
- 一只猫捧着一条鱼ComfyUI工作流
- 一个精心制作的微型赛车场ComfyUI工作流
猜你喜欢
声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!