swift 实现websocket与后台通信(swift 如何构建简单的json字符串)
2015-03-26 15:55
501 查看
swift 语言在国内流传度不是很广,初学者者想找相关资料很困难,想去国外找资料又被墙了,本人才疏学浅,记录下一些学习过程中的经验,希望看完对你也有所帮助!
一个应用不可避免要与服务器进行通信,主要有,http 与 socket。(相关概念请自行google)
http暂时不论,我们先看看socket下面衍生的websocket,今天我就把自己怎么利用websocket与服务器进行交互记录下来:
首先你需要集成websocket到自己的项目,如果不明白如何集成,请看上一篇《swift集成websocket库》
集成websocket 到自己项目后还需要添加SwiftyJSON到自己项目,具体步骤和集成websocket一样。
添加好类库后我们就可以开始写代码了!
首先打开你项目,记得通过cocoapods生成的.xcworkspace文件打开项目。你会看到图上所示的项目结构,在Pods里面有我们添加进来的2个库,如果没有请参考上一篇博客重新添加。(项目千万不要有中文,否则添加库后会有乱码)
上一步没有问题后,楼主考虑到保证websocket的唯一性,采用了单例的模式,申明我的websocket
在你使用的类里面一般是viewcotroller里面,要记得先实现
WebSocketDelegate 这个接口
接口必须实现的函数,不实现会报错
在viewDidLoad里面设置websocket的回调为在这个类实现的delegate,这样就能接收到服务器给我们返回的数据
接下来构建我们的请求参数,构建好后再用socket对象的writeString()发送给服务器
然后我们在回调函数里面打印一下服务器返回的数据
当然实际开发中我们不会仅仅打印数据,你可以根据你的业务逻辑在这里添加你自己的处理
最终实现后println打印出来的数据
这样一个基本的使用websocket发送json数据给后台到接受返回的流程就OK了!
转载请保留出处:
一个应用不可避免要与服务器进行通信,主要有,http 与 socket。(相关概念请自行google)
http暂时不论,我们先看看socket下面衍生的websocket,今天我就把自己怎么利用websocket与服务器进行交互记录下来:
首先你需要集成websocket到自己的项目,如果不明白如何集成,请看上一篇《swift集成websocket库》
集成websocket 到自己项目后还需要添加SwiftyJSON到自己项目,具体步骤和集成websocket一样。
添加好类库后我们就可以开始写代码了!
首先打开你项目,记得通过cocoapods生成的.xcworkspace文件打开项目。你会看到图上所示的项目结构,在Pods里面有我们添加进来的2个库,如果没有请参考上一篇博客重新添加。(项目千万不要有中文,否则添加库后会有乱码)
上一步没有问题后,楼主考虑到保证websocket的唯一性,采用了单例的模式,申明我的websocket
import UIKit import Starscream class SingletonSocket { let socket:WebSocket = WebSocket(url: NSURL(string: "后台服务器的地址")!) class var sharedInstance : SingletonSocket{ struct Static{ static let instance:SingletonSocket = SingletonSocket() } if !Static.instance.socket.isConnected{ Static.instance.socket.connect() } return Static.instance } }
在你使用的类里面一般是viewcotroller里面,要记得先实现
WebSocketDelegate 这个接口
接口必须实现的函数,不实现会报错
在viewDidLoad里面设置websocket的回调为在这个类实现的delegate,这样就能接收到服务器给我们返回的数据
接下来构建我们的请求参数,构建好后再用socket对象的writeString()发送给服务器
然后我们在回调函数里面打印一下服务器返回的数据
当然实际开发中我们不会仅仅打印数据,你可以根据你的业务逻辑在这里添加你自己的处理
最终实现后println打印出来的数据
这样一个基本的使用websocket发送json数据给后台到接受返回的流程就OK了!
转载请保留出处:
相关文章推荐
- 解决swift实现的websocket与后台通信问题:websocket is disconnected: masked and rev data is not currently supported
- c#实现ajax通信:向后台发送JSON字符串,接收响应字符串,并转换为对象
- [绍棠_Swift] Swift4.0如何实现字符串的HMAC_SHA1加密
- 前台jquery+ajax+json传值,后台处理完后返回json字符串,如何取里面的属性值?(不用springmvc注解)
- 如何用WebSocket实现一个简单的聊天室以及单聊功能
- 简单实现如何使用 Socket 类实现面向连接的通信。
- 前台js数组json字符串,后台json字符串转为json数组,最后转换成集合的具体实现
- SwiftJson 实现网络数据的加载与解析并实现简单的轮播
- 前台jquery+ajax+json传值,后台处理完后返回json字符串,如何取里面的属性值?(不用springmvc注解) 一.取属性值
- 原生websocket简单实现即时通信功能-注解方式
- Android如何用json格式传数据到后台(SSM) 做一个简单的登录流程
- 如何实现json字符串和 BsonDocument的互相转换
- 前台js数组转json字符串,后台json字符串转为json数组,最后转换成集合的具体实现
- 使用基于Android网络通信的OkHttp库实现Get和Post方式简单操作服务器JSON格式数据
- C#字符串数组排序 C#排序算法大全 C#字符串比较方法 一个.NET通用JSON解析/构建类的实现(c#) C#处理Json文件 asp.net使用Jquery+iframe传值问题
- 如何实现@ResponseBody,把Json字符串转换为指定类型
- 如何实现@ResponseBody,把Json字符串转换为指定类型
- smart-socket如何实现字符串通信
- [PHP 作为iOS后台Json格式HTTP通信及文件上传的实现]