本文实例为大家分享了socket.io实现简单聊天室的具体代码,供大家参考,具体内容如下
1、客户端【index.html】代码:
<body>
<h3>socket简例</h3>
<hr>
<div id = 'app'>
<div>
<div>
<ul>
<li v-for = 'item in msgs'>
{{item.name}}说:{{item.content}}
</li>
</ul>
</div>
<div>
<p><input type="text" v-model = 'msg'><button @click = 'm_send()'>发送</button></p>
</div>
</div>
</div>
<script type="text/javascript" src = 'https://cdn.bootcss.com/vue/2.5.9/vue.min.js'></script>
<script type="text/javascript" src = 'https://cdn.bootcss.com/socket.io/1.7.3/socket.io.min.js'></script>
<script type="text/javascript">
var _vm = new Vue({
data : {
name : '用户',
msg : '',
msgs : [],
},
methods : {
m_send : function() {
// 向客户端发送消息
socket_client.emit('say_client', {
name : this.name,
content : this.msg
}) ;
this.msg = '' ;
}
}
}).$mount('#app') ;
// socket服务器
var socket_client = io.connect('http://127.0.0.1:3000') ;
/**
* 监听服务端发来的消息
*
* 1、“say_server”是客户端发出信息时的key值
* 2、“res”是客户端传来的value值
*/
socket_client.on('say_server' ,function(res){
console.log('服务端发来的消息为:', res) ;
_vm.msgs.push(res);
});
</script>
</body>
2、服务端【app.js】代码:
const http = require('http') ;
const server = http.createServer() ;
// web服务器
const express = require('express') ;
const app = express();
app.use(express.static(__dirname + '/public'));
app.listen(8888, function () {
console.log('web服务器成功启动了,IP:127.0.0.1,端口号:8888') ;
});
// socket服务器
const socketio = require('socket.io') ;
const socket_server = socketio(server) ;
// 建立和客户端的socket连接
socket_server.on('connection', function(client) {
// console.log(client) ; // 查看连接进来的客户端对象内容
// console.log(Object.keys(client)) ; // 查看连接进来的客户端对象的关键key值
/**
* 监听客户端发来的消息
*
* 1、“say_client”是客户端发出信息时的key值
* 2、“res”是客户端传来的value值
*/
client.on('say_client', function(res) {
console.log('客户端发来的消息为:', res) ;
// 向客户端发送消息
socket_server.emit('say_server', res) ;
}) ;
}) ;
server.listen(3000, function() {
console.log('socket服务器成功启动了,IP:127.0.0.1,端口号:3000') ;
}) ;
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
标签:
socket.io,聊天室
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
白云城资源网 Copyright www.dyhadc.com
暂无“使用socket.io实现简单聊天室案例”评论...
更新日志
2025年10月24日
2025年10月24日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]