RDS远程数据解决方案 1.0.1

RDS远程数据解决方案 1.0.1

Christian Fox维护。



 
依赖项
KFXAdditions>= 0
KFXLog>= 0
 

  • Christian Fox

RDS远程数据解决方案

Version License Platform

示例

要运行示例项目,请克隆仓库,然后从示例目录中首先运行 pod install

要求

安装

RDS远程数据解决方案通过CocoaPods获取。要安装它,只需将以下行添加到您的Podfile中

pod "RDSRemoteDataSolutions"

提交和提交站

基本思想是提交(Submission)和提交站(SubmissionStation)。

提交是一个封装要提交给URL API的数据的对象。提交被RDSSubmissionInterface协议定义,因此任何对象都可以作为提交使用。

提交站通过-wsjsubmitSubmission:withCompletionBlock:方法接收提交,并接受任何符合RDSSubmissionInterface协议的对象。提交站会尝试解包提交对象中的数据,并以相对标准的方式发送适当的数据到在destinationURL中指定的目标URL - 默认使用NSURLSession等。一旦处理完成,completionBlock将被调用,并通过SubmissionStation的客户端提供标准的NSData、NSURLResponse和NSError对象。

使提交站出色的是,当提交由于任何原因(例如网络连接失败)而未能发送时会发生什么。在这种情况下,提交站仍然会调用completionBlock并向客户端提供NSError等,但它还会存档提交对象并启动一个调度器对象,该对象将定期尝试再次提交数据,直到成功为止。

网络连接器

另一个酷特性是RDSNetworkConnectorInterface协议。该协议定义了一个对象,它将负责将数据最终发送到URL。默认情况下,RDS使用一个RDSNetworkConnector对象,该对象使用标准的NSURLSession基于块的API来发送数据,但如果你更喜欢使用类似AFNetworking之类的库,你可以创建一个符合RDSNetworkConnectorInterface的类,并在创建RDSSubmissionStation实例时使用它作为参数。

作者

Christian Fox,[email protected]

许可证

RDSRemoteDataSolutions可在MIT许可证下获得。有关更多信息,请参阅LICENSE文件。