AFNetworkExtension 2.0.1

AFNetworkExtension 2.0.1

Elf Sundae维护。



AFNetworkExtension

Build status CocoaPods CocoaPods platforms

AFNetworking 3/4扩展。

安装

pod 'AFNetworkExtension'

您可能还想安装我修补的AFNetworkingAFNetworkActivityLogger pod,只需在Podfile中的Trunk源之前添加我的spec-repo源URL。

source 'https://github.com/ElfSundae/CocoaPods-Specs.git'
source 'https://cdn.cocoapods.org/'

target 'Example' do
    pod 'AFNetworkExtension'
end

使用

NSURL *baseURL = [NSURL URLWithString:@"https://api.github.com"];
AFHTTPSessionManager *manager = [[AFHTTPSessionManager alloc] initWithBaseURL:baseURL];

AFNetworkActivityLogger 扩展

#if DEBUG
manager.logger.enabled = YES;
[manager.logger setLogLevel:AFLoggerLevelDebug];
#endif

AFHTTPSessionManager 扩展

// https://api.github.com/users/ElfSundae
NSURL *url = [manager URLWithPath:@"users/ElfSundae"];

// Get all tasks which API path has prefix "/users/"
[manager tasksWithPath:@"users/*"];

// Get all POST tasks that requesting API path "/foo/bar"
[manager tasksWithPath:@"foo/bar" method:@"POST"];

AFNetworkReachabilityManager 扩展

获取 AFNetworkReachabilityStatus 值的字符串表示形式

AFNetworkReachabilityManager *reachability = [AFNetworkReachabilityManager sharedManager];

// 2
NSLog(@"%ld", reachability.networkReachabilityStatus);

// @"WiFi"
NSLog(@"%@", reachability.networkReachabilityStatusString);

// @"Reachable via WiFi"
NSLog(@"%@", reachability.localizedNetworkReachabilityStatusString);

// WWAN
NSLog(@"%@", AFNetworkReachabilityStatusString(AFNetworkReachabilityStatusReachableViaWWAN));

AFHTTPRequestSerializer 扩展

manager.requestSerializer.HTTPRequestHeadersBlock = ^NSDictionary<NSString *, id> * (NSURLRequest * request, id parameters) {
    return @{ @"FooHeader": NSUUID.UUID.UUIDString };
};

manager.requestSerializer.URLQueryParametersBlock = ^NSDictionary<NSString *, id> * (NSString * method, NSString * URLString, id parameters) {
    return @{ @"_time": @((long)NSDate.date.timeIntervalSince1970) };
};

许可

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