gitHub下载地址 : https://github.com/pengjinguang521/websocketDemo,下载下来后记得查看文件中的使用说明 记得将文件中的路径替换成你电脑中文件的路径。
一、Node.js的安装
1、Node.js windows电脑安装参考: http://www.cnblogs.com/zhouyu2017/p/6485265.html
2、Node.js mac电脑的安装参考:http://blog.csdn.net/u010053344/article/details/50545304
二、安装express和socket.io
首先在安装之前需要确认通过nmp是否已经存在nmp -v,如果不存在的话通过下方地址进行安装。
1、nmp windows电脑安装参考: http://blog.csdn.net/cjagkp/article/details/52160823
2、nmp mac电脑的安装参考:http://www.cnblogs.com/BinXu/p/6050850.html
接下来使用npm命令安装express和socket.io
npm install --save express
npm install --save socket.io
安装成功后,应该可以看到工作目录下生成了一个名为node_modules的文件夹,里面分别是express和socket.io,接下来可以开始编写服务端的代码了,新建一个文件:index.js。
windows电脑应该可以直接创建,不行的话可以通过修改记事本后缀的方式实现。
mac电脑采用 cd 文件目录 touch index.js的方法进行创建文件。
文件创建完成后,需要在文件中写入如下:
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
app.get('/', function(req, res){res.send('
Welcome Realtime Server
');});
http.listen(3000, function(){console.log('listening on *:3000');});
命令行运行node index.js,如果一切顺利,你应该会看到返回的listening on *:3000字样,这说明服务已经成功搭建了。此时浏览器中打开http://localhost:3000应该可以看到正常的欢迎页面。
如果你想要让服务运行在线上服务器,并且可以通过域名访问的话,可以使用Nginx做代理,在nginx.conf中添加如下配置,然后将域名(比如:realtime.plhwin.com)解析到服务器IP即可。
server { listen 80; server_name realtime.plhwin.com;
location / { proxy_pass http://127.0.0.1:3000; } }
完成以上步骤,http://realtime.plhwin.com:3000的后端服务就正常搭建了。
三、服务端实现
服务端代码实现前面讲到的index.js运行在服务端,之前的代码只是一个简单的WebServer欢迎内容,让我们把WebSocket服务端完整的实现代码加入进去,整个服务端就可以处理客户端的请求了。完整的index.js代码如下:

四、客户端实现
在刚才的目录中创建index.html文件

五、与iOS的交互
将下图中左边圈中的文件拖到你的项目中,执行右边圈中的文字。

控制器中代码实现如下,注意在delloc中将对象释放掉,内存管理这块需要注意。

网友评论