美文网首页
iOS_网络开发

iOS_网络开发

作者: 738bc070cd74 | 来源:发表于2015-09-20 19:43 被阅读108次

    NSUrlConnection

    使用 NSUrlConnection 需要借助一下几个对象

    • NSURLRequest:建立了一个请求,可以指定缓存策略、超时时间。和NSURLRequest对应的还有一个NSMutableURLRequest,如果请求定义为NSMutableURLRequest则可以指定请求方法(GET或POST)等信息。

    • NSURLConnection:用于发送请求,可以指定请求和代理。当前调用NSURLConnection的start方法后开始发送异步请求。

    基本使用

    基本使用

    error:

    App Transport Security has blocked a cleartext HTTP (http://) resource load
    

    在iOS9 beta1中,苹果将原http协议改成了https协议,使用 TLS1.2 SSL加密请求数据。

    pInfo

    NSUrlSession

    NSURLSession提供了配置会话缓存、协议、cookie和证书能力,这使得网络架构和应用程序可以独立工作、互不干扰。另外,NSURLSession另一个重要的部分是会话任务,它负责加载数据,在客户端和服务器端进行文件的上传下载

    • NSURLSessionData
    • NSURLSessionUploadTask
    • NSURLSessionDownloadTask

    这三个类都是NSURLSessionTask这个抽象类的子类,相比直接使用NSURLConnection,NSURLSessionTask支持任务的暂停、取消和恢复,并且默认任务运行在其他非主线程中

    NSURLSession *session = [NSURLSession sharedSession];
    NSURLSessionDataTask *task = [session dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error){
        //id result = [NSJSONSerialization JSONObjectWithData:dara options:0 error:nil];
        
        NSLog(@"%@", [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]);
    
        dispatch_async(dispatch_get_main_queue(), ^{
            NSLog(@"更新UI");
        });
    }];
    [task resume];
    

    NSWebView

    相关文章

      网友评论

          本文标题:iOS_网络开发

          本文链接:https://www.haomeiwen.com/subject/dzsbcttx.html