Demo地址
本篇主要讲解AFN的序列化 Serialization
,AFURLRequestSerialization
和 AFURLResponseSerialization
两个协议,不是类
001- NSCopying,NSObejct,NSCoding协议
002- contentType初识
003-多表单对数据的封装
004-stream的调用
005-关系解说
006-AFURLResponseSerializer
007-总结
AFURLRequestSerialization
/*
nsobject:oc对象的基本行为
NSSecureCoding:抛出异常
NSCodding:存储数据
NSCopying:可以自定的类支持拷贝的功能
*/
// NSCoding: 数据储存 简单 模型对象 ---> 文件 ---> 内存 (不需要任何文件的解析,可以不归档到文件,直接使用NSData,archivedDataWithRootObject)
// 异常 文件: 对象 VS key不匹配,NSSecureCoding就会抛异常 (不会出现假数据)
@protocol AFURLRequestSerialization <NSObject, NSSecureCoding, NSCopying>
+ (BOOL)supportsSecureCoding{
return YES;
[p copy]需要实现下面的函数,copy的意义是归档一次,下次直接用,不需要归档多次
- (id)copyWithZone:(NSZone *)zone{
NSLog(@"来了 拷贝我吧:%@",self);
return self;
}
}
参考github.com/tanghaitao/… ViewController2.m文件
Content-Type
content-type是前后端商量好的一套统一的数据编码类型, get请求:没有content-type选项 post请求中:afn的请求头content-type默认是多表单,设置了seri或者content-type才是json
// contentType ?
// request : request.httpBody
// request.httpBodyStream
// get para post para ?
// stream : cfreadStream writeStream?
多表单对数据的封装
参考github.com/tanghaitao/… ViewController.m文件