Skip to content

wangSmile3687/WSSNetworking

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WSSNetworking

CI Status Version License Platform

Installation

WSSNetworking is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'WSSNetworking'
pod 'WSSNetworking/WSSNetworkManager'
pod 'WSSNetworking/WSSReachabilityManager'

Example

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];
}

Author

wangsi,17601013687@163.com

License

WSSNetworking is available under the MIT license. See the LICENSE file for more info.

About

networking

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors