关于IOS的网络请求与交互,有一个比较常用的插件就是ASI, 就象 ruby 的 RestClient 。这个工具很多常用的方法,可以解决现在的大部分需求。
不过,对于网络请求的安全机制,都是各个项目写各自的策略,没有一套完美的标准来支持各项业务,所以是时候来统一这个标准了。
在设计这套IOS安全方案之前,也有同事用到过其它的一些第三方网络请求插件,各有优劣。所以为了兼容不同的第三方插件,在设计时也要考虑这一点。
另外,关于网络安全策略,也有几套现有国际通用标准,所以除了为我们自己定制的安全策略外,也要能兼容它们,以适应和其它第三方做接口.
然后得到这套初略的设计:
BHHTTPRequestFactory
是一个工厂类,可以为各种第三方插件进行支持,以后要添加一个第三方插件,只需要增加一个工厂类和实体类。大家都遵循统一的创建方法createHttpRequest
。这个创建方法同样也遵循统一的网络请求协议,BHHTTPRequestProtocol
,这个协议可以封装我们自己的标准方法。
为了使这个方法支持适应各种标准,所以这里用了策略模式将它放在了一个策略类中:HTTPSecurity
, 同样扩展也是非常方便的。
其中有几个细节要注意,ASI已经封装的很好的类了,为了不破坏其基础特性我们这里只是对它进行了继承,然后进行了各自的扩展。 但oc是不支持多重继承,所以这里用到了协议 <BHHTTPRequestProtocol
>。 这样它不仅可以用ASI的特性,也可以在其上增加公司自身的安全策略。
在创建这个实体时也只是对其进行接口生成,而不针对具体类,所以就解决了在<BHHTTPRequestFactoryProtocol
>创建的实体到底是哪个具体类的情况,不用依赖的这么紧密。
这是实用的一例:
BHASIRequestFactory *requestF = [[BHASIRequestFactory alloc] init];
id request = [requestF createHttpRequest];
[request createSecurity]; // 创建安全策略
[request buildSecurityParams]; // 完成安全加密等任务
以上只是个人的一点拙见!
- 大小: 18.7 KB
- 大小: 68.2 KB
分享到:
相关推荐
iOS 设计模式 策略模式
ios软件设计说明书
cisco 3560IOS升级支持策略路由
简单介绍iOS中的设计模式-策略模式的实现方式,以及应用场景
iOS端UI设计文档iOS端UI设计文档iOS端UI设计文档iOS端UI设计文档iOS端UI设计文档iOS端UI设计文档iOS端UI设计文档iOS端UI设计文档iOS端UI设计文档iOS端UI设计文档
iOS策略模式的实现,其中包括使用xib文件的Object
《iOS网络编程与云端应用最佳实践》是介绍iOS 6网络编程和云端应用开发技术书籍,介绍了苹果网络、数据交换格式、WebService、iCloud、定位服务、地图、推送通知、Newsstand、应用内购买、Passbook、以及社交网络...
IOS安全 .pdf
IOS 设计模式架构设计实例Demo IOS 架构 设计 模式 实例
iOS-访问网络 iOS-访问网络 iOS-访问网络
UI设计IOS8设计模版,老外设计的,IOS8规范设计。
IOS App设计手册:介绍一些关于IOS App设计中的规范;
苹果iOS15设计规范.pdf
安卓iOS毕业设计
devise-ios, 设计iOS是一个简单的客户端,它可以自动与设计连接 设计 ios Devise是一个简单的客户端,它可以自动与设计连接。 专门创建与设计ios后端 gem 服务,使你的工作轻松快捷 !插件功能:设计 ios:用户注册...
iOS 安全 攻防,英语好的直接撸就好了,英语不好的权当学英语了
UI交互设计 iOS Android 各种手机尺寸
品味移动设计:iOS、Android、Windows Phone用户体验设计最佳实践针对目前最主流的移动应用三大平台(iOS、Android 和Windows Phone)的特点以及时下最普及的两大类移动产品的规格和需求,为大家系统地阐述了设计...
《IOS应用安全攻防》PDF高清电子书,不过是英文的。
这是一篇关于ios架构设计的文档,个人觉得还不错,希望对你们有用