美文网首页
iOS webSocket开发(服务器,iOS)

iOS webSocket开发(服务器,iOS)

作者: 忘川_之上 | 来源:发表于2017-06-12 16:51 被阅读349次

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.js的核心代码

四、客户端实现

在刚才的目录中创建index.html文件

index.html

五、与iOS的交互

将下图中左边圈中的文件拖到你的项目中,执行右边圈中的文字。

iOS示例demo

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

控制器代码

相关文章

网友评论

      本文标题:iOS webSocket开发(服务器,iOS)

      本文链接:https://www.haomeiwen.com/subject/lfilqxtx.html