背景:需要下載圖片到本地榄融,具體做什么就不說了:)
方案1. 采用NSData dataWithContentsOfURL方法下載效览。
結(jié)果失敗双仍。無法獲取原因
方案2. 采用SDWebImage異步下載。
結(jié)果如下:
Error Domain=NSURLErrorDomain Code=-999 "已取消" UserInfo={NSErrorFailingURLStringKey=https://xxxxxxxxx/fa757f19-6450-4684-99d5-eae9f41186fd.png, NSErrorFailingURLKey=https://fxxxxxxxxx/fa757f19-6450-4684-99d5-eae9f41186fd.png, _NSURLErrorRelatedURLSessionTaskErrorKey=[
LocalDataTask <8BC167C7-160B-4574-A2E8-32FAD9B3CA95>.<1>
], _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <8BC167C7-160B-4574-A2E8-32FAD9B3CA95>.<1>, NSLocalizedDescription=已取消}
解決思路:
- 初步懷疑是同時(shí)有其他請(qǐng)求導(dǎo)致下載被取消泳秀,經(jīng)過代碼靜態(tài)排除标沪,無此情況。同時(shí)Android端下載成功嗜傅,瞬間整個(gè)人都不好了金句。(哈哈)
- 換個(gè)URL下載,成功吕嘀。應(yīng)該是URL問題违寞。對(duì)比兩次URL,懷疑是圖片名稱過長導(dǎo)致币他。
- 修改圖片名稱為abc.png坞靶,下載成功。
- 基本可以確定是文件名稱問題蝴悉,繼續(xù)測(cè)試彰阴。fa757f19-6450.png,失敗拍冠。
- 去掉“-”尿这,成功下載簇抵。
個(gè)人覺得以后后臺(tái)返回的URL路徑,應(yīng)該做url編碼射众,避免出現(xiàn)類似情況碟摆。