草庐IT

NSUrlSession

全部标签

ios - NSURLSessionDownloadTask cancelByProducingResumeData 与暂停

我需要暂停下载任务并在应用重启后继续下载。但我不确定应该使用哪种方法,suspend或cancelByProducingResumeData。使用cancelByProducingResumeData我可以获得部分下载的数据并使用它重新创建下载任务。但是,我必须手动管理数据、将其保存到文件、读回并重新创建任务并确保新任务不会失败。使用suspend,我可以暂停和恢复下载任务。但是我可以在应用重启后恢复这个任务吗?我正在使用后台session,因此在重新启动时会保留任务。cancelByProducingResumeData有requirements为了让它工作,这些要求是否也适用于su

ios - 子域上的 NSURLSession/NSURLConnection HTTP 加载失败(kCFStreamErrorDomainSSL,-9802)?

我们的应用程序在我们的生产和开发环境中都运行良好,但在我们的暂存环境中我们遇到了常见错误:NSURLSession/NSURLConnectionHTTPloadfailed(kCFStreamErrorDomainSSL,-9802)据我了解,当您尝试连接到非httpsURL时会发生此错误。我们将ngrok用于我们的本地隧道,它有一个httpsurl并且工作正常。对于生产,我们还使用https://ourdomain.com并且它工作正常。我们使用https://staging.ourdomain.com进行暂存,但出现错误。我看到很多解决方案都说明要这样做:NSAppTranspo

swift - 为什么我的 URLDownloadTask 不调用 didFinishDownloadtingTo?

我的大部分编程经验都在Shell和Python中。我是Swift的新手,就像“3天前”一样新。我只是想不通为什么在我的downloadTask完成时没有调用didFinishDownloadtingTo。这是我的AppDelegate.swift文件:importCocoa@NSApplicationMainclassAppDelegate:NSObject,NSApplicationDelegate,URLSessionDelegate,URLSessionDownloadDelegate{@IBOutletweakvarwindow:NSWindow!@IBOutletvarpro

Swift 2 iOS 9 Do Catch 尝试崩溃并发现意外的 nil

我正在努力熟悉swift2和iOS9中新的docatch语句我的问题是NSURLSession出错时,data参数返回nil,error返回一些东西。在iOS8中,这是预期的功能,我们只是使用if语句来确定Data是否为nil但是对于docatch,有一个新的try关键字,我认为它是为了查看某些东西是否有效,如果它无效t然后默认为catch中编写的任何代码但是,由于数据为零,我遇到了意外崩溃。这是预期的功能吗,为什么当我的try方法失败时catch没有被调用?我正在使用NSURLSession从API中提取数据。我像这样创建一个dataTaskWith请求:lettask=sessio

ios - 如何取消 URL session 请求

我使用将图像转换为base64将多个图像上传到服务器,并将图像作为参数发送到API中。但是当我们一次又一次地调用api时,如何停止按钮单击时的api调用。我正在使用以下代码调用API。提前致谢leturlPath:String="URL"leturl:URL=URL(string:urlPath)!varrequest1=URLRequest(url:url)request1.httpMethod="POST"letstringPost="imgSrc=\(image)"letdata=stringPost.data(using:String.Encoding.utf8)//print

ios - NSURLSession 捕获重定向不起作用

我有一个类:classTest:UIViewController,NSURLSessionDelegate{funcURLSession(session:NSURLSession,task:NSURLSessionTask,willPerformHTTPRedirectionresponse:NSHTTPURLResponse,newRequestrequest:NSURLRequest,completionHandler:(NSURLRequest!)->Void){letresponseHeaderFields=(response).allHeaderFieldsas![Strin

ios - 如何使用 cookie 发出 NSURLSession GET 请求

我正在使用PinterestSDK下载PinterestPin的链接(我从服务器返回的示例链接:https://www.pinterest.com/r/pin/186195765822871832/4801566892554728205/77314e40aeb26c0dc412e9cfa82f8dccc401fdb2b9806a3fe17ba8bafdb50510)。大约5天前,当我试图访问我从Pinterest上拉下来的类似链接时,我的NSURLSession开始出现404错误。一位friend说,他认为Pinterest现在必须要求cookie才能访问该链接。如何配置我的sessi

ios - Keep Alive 在 iOS 上无法正常工作

我目前正在开发一个应用程序,我们需要一些请求尽快访问我们的服务器。为了加快请求过程,我们必须消除握手(因为它需要额外的时间)并建立永久连接。应用程序使用Alamofire框架向我们的服务器发出所有请求,设置如下:我们有一个使用默认配置和httpheader设置的session管理器。lazyvarsessionManager:Alamofire.SessionManager={letconfiguration=URLSessionConfiguration.defaultconfiguration.httpAdditionalHeaders=Alamofire.SessionManag

ios - Swift 中的 HTTP 长轮询

我正在尝试使用iOS8+在Swift中实现一个长轮询解决方案。虽然该解决方案无疑有效并让主线程空闲用于UI交互,但内存使用量不断攀升,所以我显然做错了什么。我写的类如下:enumLongPollError:ErrorType{caseIncorrectlyFormattedUrlcaseHttpError}publicclassLongPollingRequest:NSObject{varGlobalUserInitiatedQueue:dispatch_queue_t{returndispatch_get_global_queue(Int(QOS_CLASS_USER_INITIAT

ios - 如何通过完成处理程序使用 JSON 结果更新 UI?

我正在尝试根据从JSON返回的数据更新一些标签。以下是数据对象和更新JSON数据对象的函数:classsampleJSON{varairbnbUS:Int?varairbnbLocal:Int?init(airbnbUS:Int,airbnbLocal:Int?){self.airbnbUS=airbnbUSself.airbnbLocal=airbnbLocal}//UsedtodownloaddatatolocalobjectsusingthenetworkservicemanagerstaticfuncdownloadAllData(urlExtension:String,com