iOS Objective-C 获取api数据
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了iOS Objective-C 获取api数据,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2037字,纯文字阅读大概需要3分钟。
内容图文
![iOS Objective-C 获取api数据](/upload/InfoBanner/zyjiaocheng/1004/54644559396b4f189895f5e145f645f6.jpg)
转:
iOS Objective-C 获取api数据
NSURLSession
直接用session获取
- (void)getDataWithPostSession {
NSURLSession *session = [NSURLSession sharedSession];
NSURL *url = [NSURL URLWithString:@"https://xxxxxx/"];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
request.HTTPMethod = @"POST";//方式
request.HTTPBody = [NSJSONSerialization dataWithJSONObject:@{@"query":@{@"key":@"top"}} options:nil error:nil];//请求内容
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) {
//NSLog(@"%@",response);
NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:data options:nil error:nil];//转为json格式
NSLog(@"%@",dic);
if (error) {
NSLog(@"%@",error);
}
}];
[dataTask resume];
}
AFNetworking
通过第三方库来获取资源
pod安装AFNetworking
#import "AFNetworking.h"
[self AFNetGetDataWithPath:@"https://xxxxxx.com/" andParameters:@{@"query":@{}}];
-(void)AFNetGetDataWithPath:(NSString *)path andParameters:(NSDictionary *)dic{
AFHTTPSessionManager* session = [AFHTTPSessionManager manager];//创建会话管理器对象
session.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json", nil];//json类型
session.requestSerializer = [AFJSONRequestSerializer serializer];
[session POST:path parameters:dic headers:@{@"Content-Type":@"application/json"} progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
NSLog(@"成功了success %@",responseObject);
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
NSLog(@"失败了error %@",error);
}];
}
以上都是POST请求,如果是Get对应修改即可,相应的请求参数配置在Parameters中。
附:
获取到的内容多是JSON格式,文本内容;
如果想要转换为model模型,这里可以安装第三方库:YYModel
#import "YYModel.h"
#import "testModel.h"//模型
testModel *model = [testModel yy_modelWithJSON:self.data];
NSLog(@"直接调用model的属性%@",model.name);
如果要获取网络图片,需要安装第三方库:SDWebImage
#import <uiimageview+webcache.h>
内容总结
以上是互联网集市为您收集整理的iOS Objective-C 获取api数据全部内容,希望文章能够帮你解决iOS Objective-C 获取api数据所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。