//
|
// XSHttpTool.h
|
//
|
// Created by xiaos on 14/11/10.
|
// Copyright © 2015年 com.xsdota. All rights reserved.
|
//
|
#import "AFNetworking.h"
|
|
/** 设置主体API */
|
static NSString *const HOST_ADDRESS = @"http://localhost:7888/Phalapi/Public/Demo";
|
/** 设置API后的特定字符 */
|
static NSString *const EXTRA_STR = @"?service=";
|
|
|
/** 缓存保存时间 */
|
static NSTimeInterval const TIMEOUT = 30;
|
static NSTimeInterval const JSON_CACHE_DURATION = 3 * 24 * 60 * 60;
|
static NSTimeInterval const IMAGE_CACHE_DURATION = 3 * 24 * 60 * 60;
|
|
/** 成功失败进度的闭包 */
|
typedef void(^successBlock)(id responseObject);
|
typedef void(^failureBlock)(NSError *error);
|
typedef void(^progressBlock)(float uploadPercent);
|
|
@interface XSHttpTool : NSObject
|
|
+ (AFHTTPRequestOperationManager *)sharedManager;
|
|
#pragma mark - GET
|
#pragma mark 普通GET请求
|
+ (void)GET:(NSString *)requestKey
|
param:(NSDictionary *)param
|
success:(successBlock)success
|
failure:(failureBlock)failure;
|
|
#pragma mark 带缓存的GET请求 用于不常更新的数据
|
+ (void)GETCache:(NSString *)requestKey
|
param:(NSDictionary *)param
|
success:(successBlock)success
|
failure:(failureBlock)failure;
|
|
#pragma mark - POST
|
#pragma mark 普通POST请求
|
+ (void)POST:(NSString *)requestKey
|
param:(NSDictionary *)param
|
success:(successBlock)success
|
failure:(failureBlock)failure;
|
|
#pragma mark 上传文件POST请求
|
+ (void)UpLoadData:(NSData *)data
|
to:(NSString *)requestKey
|
withParamName:(NSString *)paramName
|
fileName:(NSString *)fileName
|
mimeType:(NSString *)type
|
param:(NSDictionary *)param
|
success:(successBlock)success
|
failure:(failureBlock)failure
|
uploadProgress:(progressBlock)uploadProgress;
|
|
#pragma mark 上传多图的POST请求
|
/**
|
* 上传带图片的内容,允许多张图片上传(URL)POST
|
*
|
* @param url 网络请求地址
|
* @param images 要上传的图片数组(注意数组内容需是图片)
|
* @param parameter 图片数组对应的参数
|
* @param parameters 其他参数字典@
|
* @param ratio 图片的压缩比例(0.0~1.0之间)
|
* @param succeedBlock 成功的回调
|
* @param failedBlock 失败的回调
|
* @param uploadProgressBlock 上传进度的回调
|
*/
|
+ (void)upLoadImages:(NSArray *)images
|
to:(NSString *)requestKey
|
withParamName:(NSString *)paramName
|
ratio:(float)ratio
|
param:(NSDictionary *)param
|
success:(successBlock)success
|
failure:(failureBlock)failure
|
uploadProgress:(progressBlock)uploadProgress;
|
|
|
#pragma mark - cache管理
|
+ (BOOL)saveCache:(NSDictionary *)cache withIdentifier:(NSString *)cacheIdentifier;
|
+ (NSDictionary *)cacheWithIdentifier:(NSString *)cacheIdentifier;
|
|
@end
|