NSURLSession---iOS-Apple蘋果官方文檔翻譯

NSURLSession---iOS-Apple蘋果官方文檔翻譯


NSURLSession 
技術博客http://www.cnblogs.com/ChenYilong/
新浪微博http://weibo.com/luohanchenyilong
 

OutputStream
1. URL
2. Request
3. Connection:同步、異步=>NSData
會話Session
JSON XML HTML 下載文件 上傳文件
客戶端
服務器



使用URLSession全部的網絡訪問都是有緩存的,緩存文件自動保存在tmp文件夾中 URLSession自己實現的時候,就是少許屢次的!



任務1

使用defaultSessionConfiguration配置創建的會 話
退出到首頁時,任務會被自動掛起
從新進入應用時,任務會自動繼續
使用
backgroundSessionConfiguration配 置創建的會話!
!
 在退出首頁時,後臺的下載任務仍然進行中,一 直到下載完成 從新進入首頁時,纔會觸發代理方法,拷貝文件! ! 若是沒有下載完成,從新進入應用時,下載任務 會自動繼續!



• 對於一次性數據訪問,仍然可使用NSURLConnection! 若是要上傳文件,暫時仍是用AFN






 1. NSURL 
 2. NSURLRequest 
 3. NSURLSession 
 4. NSURLSessionTask 
 5. resume啓動任務 
 若是是簡單的網絡數據GETPOST,仍然使用NSURLConnection 
NSURLSession 
• NSURLSessioniOS7中新的網絡接口,與NSURLConnection是並列的。
當程序在前臺時,NSURLSessionNSURLConnection能夠互相替代
若是用戶強制將程序關閉,
NSURLSession會被結束。
• NSURLSession提供的功能:
Ø 經過URL將數據下載到內存
Ø 經過URL將數據下載到文件系統
Ø 將數據上傳到指定URL
Ø 在後臺完成上述功能 

NSURLSessionConfiguration 
• 做用:用於定義和配置 NSURLSession 對象
• 每個NSURLSession對象均可以設置不一樣的NSURLSessionConfiguration,從而知足應用內不一樣類型的網絡請求
• NSURLSessionConfiguration的三種類型:
Ø defaultSessionConfiguration 默認session配置,相似 NSURLConnection
的標準配置,使用硬盤來存儲緩存數據 
Ø ephemeralSessionConfiguration 臨時session配置,與默認配置相比, 這個配置不會將緩存、cookie等存在本地,只會存在內存裏,因此當 程序退出時,全部的數據都會消失 
Ø backgroundSessionConfiguration 後臺session配置,與默認配置相似, 不一樣的是會在後臺開啓另外一個線程來處理網絡數據 

NSURLSessionTask 
 NSURLSession 使用 NSURLSessionTask 來具體執行網絡請求的任務 
 NSURLSessionTask 支持網絡請求的取消、暫停和恢復,好比下載文 件暫停以後再恢復就可以自動從上次的進度繼續下載。 NSURLSessionTask還能獲取數據的讀取進度 
 NSURLSessionTask的三種類型:
Ø NSURLSessionDataTask 處理通常的NSData數據對象,好比經過GET 
POST方式從服務器獲取JSONXML返回等等,但不支持後臺獲取 
Ø NSURLSessionUploadTask 用於上傳文件,支持後臺上傳
Ø NSURLSessionDownloadTask 用於下載文件,支持後臺下載 

NSURLSession的使用
1. 使用NSURLSessionConfiguration來配置NSURLSession 對象
2. NSURLSession對象來啓動一個NSURLSessionTask對象
• 也可使用系統全局的sharedSession單例來知足大多數的需求
• 注:相比較NSURLConnection的返回處理,
NSURLSession提供了靈活 的數據返回方式,可使用簡單的block方式來處理返回數據,也能夠 使用更強大的delegate 

技術博客http://www.cnblogs.com/ChenYilong/ 
新浪微博http://weibo.com/luohanchenyilong 


© chenyilong. Powered by Postach.io
相關文章
相關標籤/搜索