/**
* 原生请求网络
*
* @param method "POST"/"GET"
* @param para 请求参数
* @param url 请求地址
*/
- (void)connectToNetWithMethod:(NSString *)method andPara:(id)para andUrl:(NSString *)url {
NSURLSessionConfiguration *sessionConfig = [NSURLSessionConfiguration defaultSessionConfiguration];
NSURLSession *session = [NSURLSession sessionWithConfiguration:sessionConfig];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:url] cachePolicy:NSURLRequestReloadIgnoringLocalAndRemoteCacheData timeoutInterval:20];
[request setHTTPMethod:method];//method ="POST"/"GET"
NSData *paraData = [NSJSONSerialization dataWithJSONObject:para
options:NSJSONWritingPrettyPrinted
error:nil];
[request setHTTPBody:paraData]; //把参数体放进去
NSURLSessionDataTask *task = [session dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) {
NSDictionary *result = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:&error];
NSLog(@"apiJsonResult = %@",result);
if (response) {
//获取请求header返回的东西-示例Response-Id
NSHTTPURLResponse* newResp = (NSHTTPURLResponse*)response;
NSString *responseId = [newResp.allHeaderFields objectForKey:@"Response-Id"];
//返回的内容 data
}else{
}
}];
[task resume];
}
IOS原生访问网络-NSURLSession
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- NSURLSession 概述 NSURLSession iOS 7.0 发布 可以暂停、停止、重启网络任务 请求...
- 一、整体介绍 NSURLSession在2013年随着iOS7的发布一起面世,苹果对它的定位是作为NSURLCon...
- 在iOS7中苹果新增了NSURLSession来替代原来的NSURLConnection,NSURLConnect...
- 大部分的iOS开发在刚开始接触网络请求时,应该都是用的AFNetworking这个在iOS界扛把子的框架来做的吧,...