1ess / MFNetworkManager

❤️MFNetworkManager is a high level request util based on AFNetworking.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MFNetworkManager

DUB Total-downloads Version Platform Language

  • 支持iOS 8及以上

集成方式

  • cocoapod
pod 'MFNetworkManager'

使用方式

  • 导入
#import "MFNetworkManager.h"
  • 在 appDelegate 里设置网络监听
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    //全局监控
    [MFNETWROK startMonitorNetworkType];
}
- (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;

License

MIT

About

❤️MFNetworkManager is a high level request util based on AFNetworking.

License:MIT License


Languages

Language:Objective-C 97.0%Language:Ruby 3.0%