else if ([method compare:@"post"
options:NSCaseInsensitiveSearch] == NSOrderedSame && files.count == 0) {
NSMutableURLRequest *request = [[AFJSONRequestSerializer serializer] requestWithMethod:@"POST"URLString:url parameters:data error:nil];
for (NSString *key in headers.allKeys) {
NSString *value = [NSString stringWithFormat:@"%@", headers[key]];
[request setValue:value forHTTPHeaderField:key];
}
NSURLSessionDataTask *dataTask = [manager dataTaskWithRequest:request uploadProgress:nil downloadProgress:nil completionHandler:NSURLResponse * _Nonnull response, id _Nullable responseObject, NSError * _Nullable error {
if (!error) {
if (responseObject && [responseObject isKindOfClass:[NSDictionary class]]) {
if ([[responseObject objectForKey:@"ret"] integerValue] == 1) {
NSDictionary *data = responseObject[@"data"];
//加入缓存
if (cache > 0 && [data isKindOfClass:[NSDictionary class]]) {
[ws saveFile:data key:url cache:cache];
}
}
} else {
responseObject = [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding];
}
NSDictionary *res = @{@"status":@"success", @"name":name, @"url":url, @"cache":@(NO), @"result":responseObject};
callback(res, YES);
NSDictionary *result2 = @{@"status":@"complete", @"name":name, @"url":url, @"cache":@(NO), @"result":responseObject};
callback(result2, NO);
} else {
//NSLog(@"%@", error);
id result = [[error userInfo] objectForKey:NSLocalizedDescriptionKey];
NSDictionary *res = @{@"status":@"error", @"name":name, @"url":url, @"cache":@(NO), @"result":result};
callback(res, YES);
NSDictionary *result2 = @{@"status":@"complete", @"name":name, @"url":url, @"cache":@(NO), @"result":result};
callback(result2, NO);
}
}];
[dataTask resume];
[self.taskDic setObject:dataTask forKey:name];
在post请求的时候使用这个方法也可以