码迷,mamicode.com
首页 > 移动开发 > 详细

iOS —— NSURLSessionTask

时间:2017-05-01 15:01:16      阅读:374      评论:0      收藏:0      [点我收藏+]

标签:read   received   cancel   running   current   调用   class   send   enum   

本章主要介绍抽象类 NSURLSessionTask 的一些基本属性和代理

 

一、NSURLSessionTask

1. NSURLSessionTask 是所有请求任务的基类,也是一个抽象类,所以不能通过它来创建具体的网络请求 task

 

2. 系统为每个 task 分配的唯一标识符

@property (readonly) NSUInteger taskIdentifier; 

 

3. 当前 task 正在访问的请求对象

@property (nullable, readonly, copy) NSURLRequest  *currentRequest;

 

4. 当前 task 上一个访问的请求对象

@property (nullable, readonly, copy) NSURLRequest  *originalRequest; 

 

5. 当前 task 的响应头信息

@property (nullable, readonly, copy) NSURLResponse *response;                

 

6. 当前 task 已经接受的数据大小(单位为字节)

@property (readonly) int64_t countOfBytesReceived;

 

7. 当前 task 所要接受的数据总大小

@property (readonly) int64_t countOfBytesExpectedToReceive;

 

8. 当前 task 已经发送的数据大小

@property (readonly) int64_t countOfBytesSent;

 

9. 当前 task 所要发送的数据总大小

@property (readonly) int64_t countOfBytesExpectedToSend;

 

10. 设置 task 的描述信息

@property (nullable, copy) NSString *taskDescription;

 

11. 如果 task 请求失败时的错误信息

@property (nullable, readonly, copy) NSError *error;

 

12. 当前 task 的请求状态

@property (readonly) NSURLSessionTaskState state;

NSURLSessionTaskState 是一个枚举,如下

1 typedef NS_ENUM(NSInteger, NSURLSessionTaskState) {
2     NSURLSessionTaskStateRunning = 0,    // 当前 task 正在接受数据
3     NSURLSessionTaskStateSuspended = 1,  // 当前 task 被暂停
4     NSURLSessionTaskStateCanceling = 2,  // 当前 task 被取消,会调用 NSURLSessionTaskDelegate 的 task:didCompleteWithError: 消息
5     NSURLSessionTaskStateCompleted = 3,  // 当前 task 已经完成
6 } NS_ENUM_AVAILABLE(NSURLSESSION_AVAILABLE, 7_0);

 

13. 开始 task,所有 task 在创建后都要调用该方法才能开始请求

- (void)resume;

 

14. 暂停 task,会调用 NSURLSessionTaskDelegate 的 task:didCompleteWithError: 方法

- (void)cancel;

 

15. 暂停 task

- (void)suspend;

 

iOS —— NSURLSessionTask

标签:read   received   cancel   running   current   调用   class   send   enum   

原文地址:http://www.cnblogs.com/touxinliang/p/6791844.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!