socket.io,环境搭建 & Hello world
原文:http://www.cnblogs.com/xiezhengcai/p/3955827.html
socket.io 一个与服务器实时通信的工具,它与原生的webSocket相比,具有更可靠、快速的优点,并且能很好的兼容不同系统、浏览器及设备。http://socket.io/
nodeJS 服务端js解析引擎 http://www.nodejs.org/
一、环境搭建
在服务器上创建目录socketio,以它为我们的工作空间。
安装node(略过)
在工作空间下:
安装socket io模块,
npm install socket.io
安装完之后可以看到多一个node_modules目录,里面有刚才所安装的socket.io内容
安装express
express 是一个基于node的web框架
npm install express
可以看到 express到了node_modules目录下
二、建立socket服务
var Server = require('socket.io');
var io = new Server(5555);
io.on('connection', function (socket) {
socket.emit('msg', { hi: 'Hello,world' });
socket.on('msg', function (data) {
console.log(data);
});
});
代码的1-2行显示了 创建一个socket sever,3-8行监听当用户连接之后向用户发送Hello world,并监听用户发送过来的信息将其输出到控制台
启动服务:node socketServer.js
客户端测试
var socket = io("ws://103.31.201.154:5555");
socket.on('msg',function(data){
socket.emit('msg', {rp:"fine,thank you"});
console.log(data);
});
客户端监听服务端发送来的msg消息,同时也向服务端发送一个msg消息。
运行结果:
服务端收到的消息

客户端收到消息

三、建立http服务器
使用node创建一个http服务器,将我们的客户端代码放在服务器下
var express = require('express');
var app = express();
app.get('/', function(req, res) {
res.sendfile('/index.html', {root: __dirname + '/client' });
});
app.use('/client', express.static(__dirname + '/client'))
app.listen(1111);
启动 node httpServer.js
我们将客户端代码提交到client下,通过 http://103.31.201.154:1111 就可以直接访问到我们刚写的index.html
昨天 下午停网 ,回家停电,今天整天停电停网。哭吧......
socket.io,环境搭建 & Hello world的更多相关文章
- 基于koa模块和socket.io模块搭建的node服务器实现通过jwt 验证来渲染列表、私聊、群聊功能
1. 具体代码在需要的下载 https://gitee.com/zyqwasd/socket 效果: 2. package.json文件 1. 下载基本的模块 修改了start 脚本 nodemo ...
- IntelliJ IDEA Commons IO环境搭建
IntelliJ IDEA版本信息 1.打开.或新建工程之后,点击菜单File > Project Structure... 2.在Project Structure窗口中,选Project S ...
- Socket.IO介绍:支持WebSocket、用于WEB端的即时通讯的框架
一.基本介绍 WebSocket是HTML5的一种新通信协议,它实现了浏览器与服务器之间的双向通讯.而Socket.IO是一个完全由JavaScript实现.基于Node.js.支持WebSocket ...
- Express+Socket.IO 实现简易聊天室
代码地址如下:http://www.demodashi.com/demo/12477.html 闲暇之余研究了一下 Socket.io,搭建了一个简易版的聊天室,如有不对之处还望指正,先上效果图: 首 ...
- Node+Express+MongoDB + Socket.io搭建实时聊天应用实战教程(二)--node解析与环境搭建
前言 本来开始写博客的时候只是想写一下关于MongoDB的使用总结的,后来觉得还不如干脆写一个node项目实战教程实战.写教程一方面在自己写的过程中需要考虑更多的东西,另一方面希望能对node入门者有 ...
- 使用Node.js+Socket.IO搭建WebSocket实时应用
Web领域的实时推送技术,也被称作Realtime技术.这种技术要达到的目的是让用户不需要刷新浏览器就可以获得实时更新.它有着广泛的应用场景,比如在线聊天室.在线客服系统.评论系统.WebIM等. W ...
- (转)使用Node.js+Socket.IO搭建WebSocket实时应用
Web领域的实时推送技术,也被称作Realtime技术.这种技术要达到的目的是让用户不需要刷新浏览器就可以获得实时更新.它有着广泛的应用场景,比如在线聊天室.在线客服系统.评论系统.WebIM等. W ...
- Node+Express+MongoDB + Socket.io搭建实时聊天应用
Node+Express+MongoDB + Socket.io搭建实时聊天应用 前言 本来开始写博客的时候只是想写一下关于MongoDB的使用总结的,后来觉得还不如干脆写一个node项目实战教程实战 ...
- 使用Node.js+Socket.IO搭建WebSocket实时应用【转载】
原文:http://www.jianshu.com/p/d9b1273a93fd Web领域的实时推送技术,也被称作Realtime技术.这种技术要达到的目的是让用户不需要刷新浏览器就可以获得实时更新 ...
随机推荐
- 自定义Image自动切换图像控件
做这么一个控件,图片自动切换,形成动画效果. 随便的码码,码完发现东西太少了,不过还算完善. public class MyPictureBox : PictureBox { Timer timer ...
- 百度地图 api
首先在百度开发者中心申请ak 在页面head中引用必要的css样式和js脚本 <script type="text/javascript" src="http:// ...
- SSIS的DelayValidation属性
一,DelayValidation Property true if validation of the package is delayed until run time. false if the ...
- Angular从0到1:function(上)
1.前言 Angular作为最流行的前端MV*框架,在WEB开发中占据了重要的地位.接下来,我们就一步一步从官方api结合实践过程,来学习一下这个强大的框架吧. Note:每个function描述标题 ...
- 基于Metronic的Bootstrap开发框架经验总结(4)--Bootstrap图标的提取和利用
在前面的一篇随笔<基于Metronic的Bootstrap开发框架经验总结(1)-框架总览及菜单模块的处理>介绍了菜单模块的处理,主要介绍如何动态从数据库里面获取记录并构建菜单列表.其中菜 ...
- MongoDB的学习--索引
索引可以用来优化查询,而且在某些特定类型的查询中,索引是必不可少的.为集合选择合适的索引是提高性能的关键. 先来mock数据 for (i = 0; i < 1000000; i++) { db ...
- 使用 CSS3 伪元素实现立体的照片堆叠效
CSS3 里引入的伪元素让 Web 开发人员能够在不需要额外添加 HTML 标签的情况下制作出复杂的视觉效果.例如,:before 和 :after 这个两个 CSS3 伪元素就可以帮助你实现很多有趣 ...
- 对比MFC资源文件谈谈WPF布局方式
对比MFC资源文件谈谈WPF布局方式 MFC方式 对于传统的MFC基于UI的应用程序设计通常分两步走,首先是设计UI,使用的是RC文件,然后是代码文件,对RC文件进行操作,如下面Figure 1 的基 ...
- Windows Azure Virtual Network (5) 设置Azure Virtual Machine固定Private IP
<Windows Azure Platform 系列文章目录> 注意:本文介绍的是Global Azure (http://www.windowsazure.com),如果你使用的是由世纪 ...
- CSS魔法堂:hasLayout原来是这样!
前言 过去一直听说旧版本IE下很多诡异bug均由一个神秘角色引起的,那就是hasLayout.趁着最近突然发神经打算好好学习CSS,顺便解答多年来的疑惑. hasLayout到底是何方神圣? hasL ...