MFNetworkManager 0.3.0

MFNetworkManager 0.3.0

GodzzZZZ 维护。



 
依赖于
AFNetworking>= 0
RealReachability>= 0
 

  • 作者
  • GodzzZZZ

MFNetworkManager

DUB

  • 支持 iOS 8 及以上

集成方式

  • cocoapod
pod 'MFNetworkManager'

使用方式

  • 导入
#import "MFNetworkManager.h"
  • 在 appDelegate 中设置网络监听
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    //全局监控
    [MFNETWROK startMonitorNetworkType];
}
  • 处理两种网络连接情况的代理方法(推荐使用 MFHUDManager)
- (void)networkManager:(MFNetworkManager *)manager didConnectedWithPrompt:(NSString *)prompt;
- (void)networkManager:(MFNetworkManager *)manager disDisConnectedWithPrompt:(NSString *)prompt;
  • 调用 MFNETWORK 的 get,post,upload,download 方法即可
//get
- (NSURLSessionDataTask *)get:(NSString *)url params:(id)params success:(MFNetworkSuccessHandle)success failure:(MFNetworkFailureHandle)failure;

//post
- (NSURLSessionDataTask *)post:(NSString *)url params:(id)params success:(MFNetworkSuccessHandle)success failure:(MFNetworkFailureHandle)failure;

//upload with images
- (NSURLSessionDataTask *)upload:(NSString *)url params:(id)params name:(NSString *)name images:(NSArray<UIImage *> *)images imageScale:(CGFloat)imageScale imageType:(MFImageType)imageType progress:(MFProgress)progress success:(MFNetworkSuccessHandle)success failure:(MFNetworkFailureHandle)failure;

//upload with datas
- (NSURLSessionDataTask *)upload:(NSString *)url params:(id)params name:(NSString *)name imageDatas:(NSArray<NSData *> *)imageDatas progress:(MFProgress)progress success:(MFNetworkSuccessHandle)success failure:(MFNetworkFailureHandle)failure;

//download
- (NSURLSessionDownloadTask *)download:(NSString *)url fileDir:(NSString *)fileDir progress:(MFProgress)progress success:(void(^)(NSString *))success failure:(MFNetworkFailureHandle)failure;
  • 取消请求
//cancel
- (void)cancelAllRequest;

- (void)cancelRequestWithURL:(NSString *)url;
  • 其他配置
/**
 delegate
*/
@property (nonatomic, weak) id<MFNetworkManagerDelegate> delegate;

/**
 baseURL
*/

@property (nonatomic, strong) NSString *baseURL;

/**
 timeoutInterval 30 default
*/
@property (nonatomic, assign) NSTimeInterval requestTimeoutInterval;

/**
 sets the common parameter of the HTTP client. if value is `nil`, removes the existing value which associated to the field.
 @param value - the value of the parameter
 @param field - the parameter, or `nil`
*/
- (void)setValue:(id)value forParameterField:(NSString *)field;

/**
 sets the common headerField of the HTTP client. if value is `nil`, removes the existing value which associated to the field.
 @param value - the value of the HTTP header
 @param field - the HTTP header, or `nil`
*/
- (void)setValue:(NSString *)value forHTTPHeaderField:(NSString *)field;

/**
 request serialization    MFHTTPRequestSerialization default
*/
@property (nonatomic, assign) MFRequestSerialization requestSerialization;

/**
 response serialization    MFJSONResponseSerialization default
*/
@property (nonatomic, assign) MFResponseSerialization responseSerialization;

许可证

MIT