转载链接
-(void)getResult{
_MB = [MBProgressHUD showHUDAddedTo:self.navigationController.view animated:YES];
//接口路径
NSString *path = @"http://a.apix.cn/apixlife/phone/phone";
//路径-+参数
NSString *pathWithPhoneNum = [NSString stringWithFormat:@"%@?phone=%@",path,_phoneNumFD.text];
//中文编码
NSString *urlPath = [pathWithPhoneNum stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];
//URL
NSURL *phoneURL = [NSURL URLWithString:urlPath];
//请求对象
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:phoneURL];
//请求方式
[request setHTTPMethod:@"GET"];
//请求头
[request setValue:@"92b5787ecd17417b718a2aaedc7e6ce8" forHTTPHeaderField:@"apix-key"];
//网络配置
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
//网络会话
NSURLSession *session = [NSURLSession sessionWithConfiguration:configuration];
//任务
NSURLSessionDataTask *sessionTask = [session dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) {
//回到主线程更新UI -> 撤销遮罩
dispatch_async(dispatch_get_main_queue(), ^{
[_MB hide:YES];
});
if (error) {
NSLog(@"请求失败... %@",error);
//提示用户请求失败!
UIAlertController *AV = [UIAlertController alertControllerWithTitle:@"提示" message:@"抱歉,服务器错误,请稍后重试..." preferredStyle:UIAlertControllerStyleActionSheet];
[AV addAction:[UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
//点击OK,进行相应操作,可置nil
NSLog(@"您点击了OK..");
}]];
[self presentViewController:AV animated:YES completion:nil];
}else{
//JSON 解析 苹果原生效率最高
NSDictionary *result = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:nil];
if ([[result objectForKey:@"message"] isEqualToString:@"success"]) {
//获取数据->主线程更新UI
dispatch_async(dispatch_get_main_queue(), ^{
NSDictionary *data = [result objectForKey:@"data"];
NSString *city = [data objectForKey:@"city"];
NSString *province = [data objectForKey:@"province"];
NSString *belong = [NSString stringWithFormat:@"%@ · %@",province,city];
[_resultLB setText:belong];
});
}else{
NSLog(@"未查到信息....");
}
NSLog(@"请求成功... %@",result);
}
}];
//开始任务
[sessionTask resume];
}