头文件
#import "MyHttpUploadProtocl.h"
#import <Foundation/Foundation.h>
@interface UploadPubQuality : NSObject<MyHttpUploadProtocl>
@property (nonatomic,strong) NSString *uploadUrl;
-(void) startUpload:(NSString *)inspect_primary inspect_detail:(NSString *)inspect_detail block: (void(^)(NSDictionary * param))callback ;
@end
主文件
#import "UploadPubQuality.h"
#import <AFNetworking.h>
@implementation UploadPubQuality
- (instancetype)init{
NSString *url = AppServiceConfig.GetServiceUrl;
self.uploadUrl = [NSString stringWithFormat:@"%@/%@",url,@"UploadQcData"];
return self;
}
-(void) startUpload:(NSString *)inspect_primary inspect_detail:(NSString *)inspect_detail block: (void(^)(NSDictionary *))callback {
NSMutableDictionary*dic=[[NSMutableDictionary alloc] init];
[dic setObject:inspect_primary forKey:@"inspect_primary"];
[dic setObject:inspect_detail forKey:@"inspect_detail"];
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
manager.requestSerializer = [AFHTTPRequestSerializer serializer];
manager.responseSerializer = [AFJSONResponseSerializer serializer];
manager.responseSerializer.acceptableContentTypes= [NSSet setWithObjects:@"application/json", @"text/html",@"text/json",@"text/javascript", nil] ;//如果报接受类型不一致请替换一致text/html或别的
[manager POST:self.uploadUrl parameters:dic success:^(AFHTTPRequestOperation *operation, id responseObject) {
if (callback) {
callback(responseObject);
}
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
if (callback) {
NSDictionary *dict = [[NSDictionary alloc]initWithObjectsAndKeys:@"0",@"flag",@"error",@"msg", nil];
callback(dict);
}
}];
}
@end
调用
- (void)didUploadButttonClicked:(UIButton *)sender
{
InitDbTableQuality *initd = [[InitDbTableQuality alloc]init];
NSMutableArray *array = [initd GetDetailIUnUploadTable];
NSMutableArray *dataArray = [initd GetMainTableWithUpload_flag:0];
NSString *jsonText = [ModelToJson toJSON:dataArray options:NSJSONWritingPrettyPrinted error:nil];
NSString *jsonTextDetail = [ModelToJson toJSON:array options:NSJSONWritingPrettyPrinted error:nil];
UploadPubQuality *upload = [[UploadPubQuality alloc]init];
[upload startUpload:jsonText inspect_detail:jsonTextDetail block:^(NSDictionary *param){
Boolean flag = [[param valueForKey:@"flag"] boolValue];
NSString *msg = (NSString*)[param objectForKey: @"msg" ];
[HCommon popupSuccessMessage:msg];
if( flag ){
[self.HunUploadVC updateUploadFlag];
NSNotification * notice = [NSNotification notificationWithName:@"uploadSuccess" object:nil userInfo:nil];
[[NSNotificationCenter defaultCenter]postNotification:notice];
}
}];
}