// 前提 工程中存在AFNWorking第三方文件
建立一个文件AppTools
AppTools.h文件
#import <Foundation/Foundation.h>
@protocol SetMassage <NSObject>
// 网络请求错误时,的代理方法,并返回error。
- (void)setMassage:(NSError *)error;
@end
typedef void(^AppTool)(id response);
@interface AppTools : NSObject
// get网络请求
+ (void)shareDataHandleWithGetURLString:(NSString *)string andBody:(NSDictionary *)body andDelegate:(id)delegate andAppTools:(AppTool)response;
// post网络请求
+ (void)shareDataHandleWithPostURLString:(NSString *)string andBody:(NSDictionary *)body andDelegate:(id)delegate andAppTools:(AppTool)response;
// 网络请求错误时,的代理
@property (nonatomic,assign)id <SetMassage> delegate;
@end
AppTools.m文件
#import "AppTools.h"
#import "AFNetworking.h"
@implementation AppTools
// 实现get请求方法
+ (void)shareDataHandleWithGetURLString:(NSString *)string andBody:(NSDictionary *)body andDelegate:(id)delegate andAppTools:(AppTool)response{
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManagermanager];
manager.responseSerializer.acceptableContentTypes = [NSSetsetWithObjects:@"text/plain",@"text/json",@"application/json",@"text/javascript",@"text/html",nil];
[manager GET:stringparameters:bodysuccess:^(AFHTTPRequestOperation *operation,id responseObject) {
response(responseObject);
} failure:^(AFHTTPRequestOperation *operation,NSError *error) {
// 签订协议 并执行协议方法
AppTools *appTools = [[[AppToolsalloc]init]autorelease];
appTools.delegate = delegate;
[appTools.delegatesetMassage:error];
}];
}
// 实现post请求
+ (void)shareDataHandleWithPostURLString:(NSString *)string andBody:(NSDictionary *)body andDelegate:(id)delegate andAppTools:(AppTool)response {
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManagermanager];
manager.responseSerializer.acceptableContentTypes = [NSSetsetWithObjects:@"text/plain",@"text/json",@"application/json",@"text/javascript",@"text/html",nil];
[manager POST:stringparameters:bodysuccess:^(AFHTTPRequestOperation *operation,id responseObject) {
response(responseObject);
} failure:^(AFHTTPRequestOperation *operation,NSError *error) {
// 签订协议 并执行协议方法
AppTools *appTools = [[[AppToolsalloc]init]autorelease];
appTools.delegate = delegate;
[appTools.delegatesetMassage:error];
}];
}
@end