- 讲真我对于这种奇葩写法是深恶痛绝,由于奇葩的项目要求和人员的跳槽留下的大坑简直是无语,不希望下一个还是这样被坑。
- 先将AFN文件导入 或者pod啊
NSDictionary *parameters;
parameters = @{@"type":@"getpath",@"path":_path};
// 设置参数 根据你们服务器的格式设置
NSString *temp = [NSString stringWithFormat:@"{\"type\":\"getpath\",\"path\":\"%@\"}",_path];
NSData *data = [temp dataUsingEncoding:NSUTF8StringEncoding];
NSString *requestUrl = [NSString stringWithFormat:@"%@%@",WEBURL_PREFIX,WEBURL_GETDIR];//请求的URL 我是直接从代码上copy的 so 这个应该知道怎么弄吧
AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]];
//如果你不需要将通过body传 那就参数放入parameters里面
NSMutableURLRequest *request = [[AFHTTPRequestSerializer serializer] requestWithMethod:@"POST" URLString:requestUrl parameters:nil error:nil];
NSLog(@"requestURL:%@",requestUrl);
request.timeoutInterval= 10;
[request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
// 设置body 在这里将参数放入到body
[request setHTTPBody:data];
AFHTTPResponseSerializer *responseSerializer = [AFHTTPResponseSerializer serializer];
responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json",
@"text/html",
@"text/json",
@"text/javascript",
@"text/plain",
nil];
manager.responseSerializer = responseSerializer;
[[manager dataTaskWithRequest:request uploadProgress:nil downloadProgress:nil completionHandler:^(NSURLResponse *response,id responseObject,NSError *error){
if(responseObject!=nil){
NSString *result = [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding];
NSDictionary *jsonDict = [NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingMutableLeaves error:nil];
NSString *type = [jsonDict objectForKey:@"type"];
NSString *path = [jsonDict objectForKey:@"path"];
if ([type isEqualToString:@"getpath"]) {
if ([path isEqualToString:_path]) {
_diskList = [jsonDict objectForKey:@"disk"];
_folderList = [jsonDict objectForKey:@"folder"];
_documentList = [jsonDict objectForKey:@"document"];
NSLog(@"%@",@"path is correct");
}else{
NSLog(@"%@",@"path is not correct");
}
}else{
NSLog(@"%@",@"type is not getpath");
}
[self.tableView reloadData];
NSLog(@"%@",result);
}
}]resume];