AF二次封装
2016-05-19 17:20
363 查看
//
// MEManger.h
// 二次封装请求类
//
// Created by mac for csh on 16/5/19.
// Copyright © 2016年 明恩龙. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "AFNetworking.h"
typedef void (^DowloadBlackSuccess)(AFHTTPSessionManager *sessionManger,id responseObject);
@interface MEManger : NSObject
{
AFHTTPSessionManager * _sessionManger;
}
/**
* 单例
*/
+ (MEManger *)shardManger;
/**
* 请求数据接口
*/
-(NSString *)getStr:(NSString *)url;
/**
* GET 请求
*/
-(NSURLSessionDataTask *)GET:(NSString *)URLString parameters:(id)parameters success:(void (^)(NSURLSessionDataTask * task, id responseObject))success failure:( void (^)(NSURLSessionDataTask * task, NSError * error))failure;
/**
* post 请求
*/
- (NSURLSessionDataTask *)POST:(NSString *)URLString parameters:(id)parameters success:(void (^)(NSURLSessionDataTask * task, id responseObject))success failure:(void (^)(NSURLSessionDataTask * task, NSError * error))failure;
//
// MEManger.m
// 二次封装请求类
//
// Created by mac for csh on 16/5/19.
// Copyright © 2016年 明恩龙. All rights reserved.
//
#import "MEManger.h"
#define RESPONSE_CONTENT_TYPE [NSSet setWithObjects:@"application/json",@"text/json",@"text/javascript",@"text/html",@"text/plain",@"image/jpeg",@"",nil]
@implementation MEManger
+(MEManger *)shardManger
{
static MEManger *netWorking;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
netWorking = [[MEManger alloc]init];
});
return netWorking;
}
- (id)init
{
self =[super init];
if (self) {
_sessionManger = [AFHTTPSessionManager manager];
_sessionManger.responseSerializer.acceptableContentTypes =RESPONSE_CONTENT_TYPE;
_sessionManger.requestSerializer = [AFHTTPRequestSerializer serializer];
}
return self;
}
-(NSString *)getStr:(NSString *)url
{
return url;
}
/**
* get请求
*/
- (NSURLSessionTask *)GET:(NSString *)URLString parameters:(id)parameters success:(void (^)(NSURLSessionDataTask * task, id responseObject))success failure:(void (^)(NSURLSessionDataTask * task, NSError * error))failure
{
NSMutableDictionary *mutableParmeters = [[NSMutableDictionary alloc]initWithDictionary:parameters];
return [_sessionManger GET:URLString parameters:mutableParmeters progress:nil success:success failure:failure];
}
/**
* post
*/
- (NSURLSessionDataTask *)POST:(NSString *)URLString parameters:(id)parameters success:(void (^)(NSURLSessionDataTask * task, id responseObject))success failure:(void (^)(NSURLSessionDataTask * task, NSError * error))failure
{
NSMutableDictionary *mutableParmerts = [[NSMutableDictionary alloc]initWithDictionary:parameters];
return [_sessionManger POST:URLString parameters:mutableParmerts progress:nil success:success failure:failure];
}
@end
// MEManger.h
// 二次封装请求类
//
// Created by mac for csh on 16/5/19.
// Copyright © 2016年 明恩龙. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "AFNetworking.h"
typedef void (^DowloadBlackSuccess)(AFHTTPSessionManager *sessionManger,id responseObject);
@interface MEManger : NSObject
{
AFHTTPSessionManager * _sessionManger;
}
/**
* 单例
*/
+ (MEManger *)shardManger;
/**
* 请求数据接口
*/
-(NSString *)getStr:(NSString *)url;
/**
* GET 请求
*/
-(NSURLSessionDataTask *)GET:(NSString *)URLString parameters:(id)parameters success:(void (^)(NSURLSessionDataTask * task, id responseObject))success failure:( void (^)(NSURLSessionDataTask * task, NSError * error))failure;
/**
* post 请求
*/
- (NSURLSessionDataTask *)POST:(NSString *)URLString parameters:(id)parameters success:(void (^)(NSURLSessionDataTask * task, id responseObject))success failure:(void (^)(NSURLSessionDataTask * task, NSError * error))failure;
//
// MEManger.m
// 二次封装请求类
//
// Created by mac for csh on 16/5/19.
// Copyright © 2016年 明恩龙. All rights reserved.
//
#import "MEManger.h"
#define RESPONSE_CONTENT_TYPE [NSSet setWithObjects:@"application/json",@"text/json",@"text/javascript",@"text/html",@"text/plain",@"image/jpeg",@"",nil]
@implementation MEManger
+(MEManger *)shardManger
{
static MEManger *netWorking;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
netWorking = [[MEManger alloc]init];
});
return netWorking;
}
- (id)init
{
self =[super init];
if (self) {
_sessionManger = [AFHTTPSessionManager manager];
_sessionManger.responseSerializer.acceptableContentTypes =RESPONSE_CONTENT_TYPE;
_sessionManger.requestSerializer = [AFHTTPRequestSerializer serializer];
}
return self;
}
-(NSString *)getStr:(NSString *)url
{
return url;
}
/**
* get请求
*/
- (NSURLSessionTask *)GET:(NSString *)URLString parameters:(id)parameters success:(void (^)(NSURLSessionDataTask * task, id responseObject))success failure:(void (^)(NSURLSessionDataTask * task, NSError * error))failure
{
NSMutableDictionary *mutableParmeters = [[NSMutableDictionary alloc]initWithDictionary:parameters];
return [_sessionManger GET:URLString parameters:mutableParmeters progress:nil success:success failure:failure];
}
/**
* post
*/
- (NSURLSessionDataTask *)POST:(NSString *)URLString parameters:(id)parameters success:(void (^)(NSURLSessionDataTask * task, id responseObject))success failure:(void (^)(NSURLSessionDataTask * task, NSError * error))failure
{
NSMutableDictionary *mutableParmerts = [[NSMutableDictionary alloc]initWithDictionary:parameters];
return [_sessionManger POST:URLString parameters:mutableParmerts progress:nil success:success failure:failure];
}
@end
相关文章推荐
- IOS5中的Safari不兼容Javascript中的Date问题,做下笔录吧!
- mysql配置优化
- 默认Action的配置
- static方法,属性,代码块初始化顺序和执行顺序
- 关于Spring中的<context:annotation-config/>配置
- hdu2838
- 定制标记---标记文件
- linux使用小记
- 语音及音频相关
- 【特效】隔行变色
- 蘑菇街购物车动态添加
- Android学习笔记三十一:Java异常处理中try,catch,finally的各种组合用法
- linux 下问题处理
- YARN与MRv1的对比
- 基础总结篇之三:Activity的task相关
- MFC CListCtrl的方法
- ReactNative动画(下)
- Android audio transmit with Base64 based on XMPP
- 以栈解决迷宫问题
- mac下mysql workbench导出数据库