WSSNetworking
安装
WSSNetworking 可以通过 CocoaPods 获取。要安装它,只需将以下行添加到您的 Podfile 中
pod 'WSSNetworking'
pod 'WSSNetworking/WSSNetworkManager'
pod 'WSSNetworking/WSSReachabilityManager'
示例
WSSNetworking
pod 'WSSNetworking/WSSNetworkManager'
WSSNetworkConfig
/// shared config
+ (WSSNetworkConfig *)sharedConfig;
/// baseURL ,http://www.example.com
@property (nonatomic, copy) NSString *baseUrl;
/// timeout , defult 15s
@property (nonatomic, assign) NSTimeInterval timeoutInterval;
/// debug log ,defult NO
@property (nonatomic, assign) BOOL debugLogEnabled;
/// securityPolicy
@property (nonatomic, strong) AFSecurityPolicy *securityPolicy;
/// sessionConfiguration
@property (nonatomic, strong) NSURLSessionConfiguration *sessionConfiguration;
/// unify handle
@property (nonatomic, weak) id <WSSNetworkProtocol> networkProtocol;
WSSNetworkProtocol
/**
入参的统一处理
@param parameters parameters description
@return return value description
*/
- (id)requestParameters:(id)parameters;
/**
成功的统一处理
@param result result description
@return return value description
*/
- (id)resultSuccessResponseWithResult:(id)result;
/**
失败的统一处理
@param result result description
@return return value description
*/
- (id)resultFailureResponseWithResult:(id)result;
WSSRequest
WSSRequest *request = [[WSSRequest alloc] initWithRequestMethod:WSSRequestMethodPOST fullUrl:nil requestUrl:@"XXX" requestArgument:@{@"page_num":@"1",@"page_size":@"20"}];
[request startRequestWithSuccess:^(WSSRequest * _Nullable request) {
NSLog(@"----------request success------ %@",request.responseObject);
} failure:^(WSSRequest * _Nullable request) {
NSLog(@"----------request failure------ %@",request.responseObject);
}];
或者
request.tag = 100;
request.delegate = self;
[request startRequest];
#pragma mark - WSSRequestDelegate
- (void)requestFailure:(WSSRequest *)request {
}
- (void)requestSuccess:(WSSRequest *)request {
}
可以在WSSNetworkConfig写上请求的baseUrl、timeoutInterval、sessionConfiguration、networkProtocol等 也可以直接设置
request.baseUrl //url
request.requestSerializerType //序列化
request.requestHeaderFieldValueDictionary //header信息
WSSReachabilityManager
pod 'WSSNetworking/WSSReachabilityManager'
@property (nonatomic, strong) WSSNetworkReachabilityManager *networkReachabilityManager;
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(networkChanged:) name:kWSSNetworkReachabilityChangedNotification object:nil];
self.networkReachabilityManager = [WSSNetworkReachabilityManager reachability];
[self.networkReachabilityManager startMonitoring];
WSSNetworkReachabilityStatus networkStatus = [self.networkReachabilityManager currentReachabilityStatus];
- (void)networkChanged:(NSNotification *)notif {
NSDictionary *userInfo = notif.userInfo;
WSSNetworkReachabilityStatus networkStatus = [userInfo[kWSSNetworkingReachabilityNotificationStatusItem] integerValue];
}
作者
授权
WSSNetworking 在MIT授权下可用。有关更多信息,请参阅LICENSE文件。