// 请求序列化将参数编码为查询字符串、HTTP主体、必要时设置适当的HTTP头字段
// AFNetworking中提供了三种序列化器
// 1. AFHTTPRequestSerializer 根据request和请求参数构造NSURLRequest对象
// 2. AFJSONRequestSerializer 继承自AFHTTPRequestSerializer,相对于AFHTTPRequestSerializer只是将参数全部设置到HTTPBody而已
// 3. AFPropertyListRequestSerializer 继承自AFHTTPRequestSerializer,基本和AFJSONRequestSerializer差不多,只不过使用NSPropertyListSerialization将其转化为了PropertyList的XML格式罢了
@protocol AFURLRequestSerialization <NSObject, NSSecureCoding, NSCopying>
// 根据指定的参数parameters将request进行编码,并将编码以后的request进行返回
- (nullable NSURLRequest *)requestBySerializingRequest:(NSURLRequest *)request
withParameters:(nullable id)parameters
error:(NSError * _Nullable __autoreleasing *)error NS_SWIFT_NOTHROW;
@end
// 将指定的string字符串进行百分号编码
FOUNDATION_EXPORT NSString * AFPercentEscapedStringFromString(NSString *string);
// 将指定的parameters字典转化为查询字符串
FOUNDATION_EXPORT NSString * AFQueryStringFromParameters(NSDictionary *parameters);