草庐IT

NSUrlSession

全部标签

ios - Swift 2 JSON POST 请求 [NSMutableURLRequest 的 HTTPBody 的字典与字符串]

我有以下快速代码可以成功提交POST请求。letrequest=NSMutableURLRequest(URL:NSURL(string:url)!)letsession=NSURLSession.sharedSession()request.HTTPMethod="POST"request.HTTPBody="foo=bar&baz=lee".dataUsingEncoding(NSUTF8StringEncoding)lettask=session.dataTaskWithRequest(request,completionHandler:completionHandler)我不想

ios - URLSession 从 HTTP GET 请求返回空数组

我正在发出一个HTTPGET请求,它会随机返回一个空数组,每个请求都会返回一个状态代码200OK,无论我是否得到正确的响应。我已经检查了Chrome中的URL,它们是正确的,但我无法在iOS之外重现此错误。我目前正在做的是递归调用此方法,直到它返回正确的响应。有时它会给我一个填充数组的正确响应,有时它不会给我一个空数组,即使对于同一个调用也是如此。funcgetStopEstimation(routeId:String?,stopId:String?,completion:(result:String)->Void){letcomponents:NSURLComponents=NSUR

swift - Xcode8 beta 6 - 带有 completionHandler 参数的 URLSession 不起作用

从beta5更改为beta6后,我似乎根本无法在我的代码中使用此方法。openfuncdataTask(withrequest:URLRequest,completionHandler:@escaping(Data?,URLResponse?,Error?)->Swift.Void)->URLSessionDataTask我的代码:lettask=self.createSession().dataTask(with:request,completionHandler:{(data,response,error)inself.handleTaskResult(data:data,resp

ios - Swift:JSON 写入中的无效类型(UIImage)

我正在尝试将UIImage转换为base64字符串,以便可以将其保存到文件中然后上传。我正在做以下事情:代码片段:varwritePath:String!varparams:NSMutableDictionary=["file1":UIImageJPEGRepresentation(self.imageView1.image!,1.0)!.base64EncodedStringWithOptions(NSDataBase64EncodingOptions(rawValue:0)),"userId":user_id]do{letbodyJson=tryNSJSONSerializatio

ios - 来自后台推送的后台网络调用

我有一个与AppleWatch通信的应用程序。当主iOS应用程序收到远程通知时,它会使用URLSession触发网络请求,然后将结果发送到watch。问题是,当iOS应用程序在后台并收到推送通知时,永远不会进行网络调用。我可以通过断点看到执行了代码,但没有执行接收数据时的代码。我确实设置了内容可用标志,我也尝试过使用URLSessionConfiguration.background但没有成功。varconfig:URLSessionConfiguration!varsession:URLSession?privatefuncconfigureSession(){self.config

ios - Swift - NSURLSession 恢复后完成操作

我正在尝试在URLSession恢复后完成一个操作。所以我使用url从我的服务器下载了几张图片,一切正常。但是现在我正在尝试在完成下载后将这些图像保存到磁盘。问题现在我可以在下载它们的同时将它们保存在同一个查询中,但我不希望太多,因为它会使我的查询变慢。因此,我已经通过查询向我的func添加了一个完成处理程序,但是当我将图像保存到该block中的磁盘时,它可以工作但是我无法对我的屏幕执行任何操作,因为查询尚未恢复但它被阻止了触摸我猜...现在我希望能够在恢复查询后立即调用我的函数将图像保存到磁盘....任何人有任何想法吗?如果有人需要更多解释或查看代码,请在下面发表评论非常感谢任何可以

ios - 为什么在停止应用程序并再次运行后会触发先前的下载完成?

我使用两个数组跟踪下载,以跟踪我的下载并知道将它们保存在何处:privatevarfilesToDownload:NSMutableArray=[]privateletstartedDownloads:NSMutableArray=[]下载完成后,将它们从两个阵列中移除,并将下载的文件移动到永久位置。//iscalledoncethedownloadiscompleteinternalfuncURLSession(session:NSURLSession,downloadTask:NSURLSessionDownloadTask,didFinishDownloadingToURLloc

ios - Swift 3 - 如何处理 URLRequest/URLSession 错误?

我想知道你们在应用中使用URLRequest时如何处理错误。您如何通知您的用户发生了错误?你甚至会通知你的用户吗?您是否再次尝试重新加载URLRequest?您是否告诉您的用户关闭当前屏幕并使用警告框再次打开它?我不知道。一旦出现错误,您的应用就会停止。那么,当发生这种情况并且遇到网络问题、Json数据错误时,您会怎么做?当您收到“网络连接错误(服务器已关闭)”或URLSession返回错误但互联网连接正常时,您会怎么做?请看下面的代码,帮我弄清楚发生错误时需要做什么。leturl=URL(string:"http://example/jsonFile.php")varrequest=

ios - 如何在 Swift 4 中通过具有多个参数的多部分表单数据上传图像或文件

我在通过图像选择器Controller上传图片或文件时遇到问题。我通过图像选择器选择图像,然后传递参数event_id、booking_id、memeber_id和upfile。所有这些值在Postman中都是表单数据格式。如何将这些值发送到API?在postman中,它运行完美,但在Xcode中显示错误。我在考虑参数,我发送的错误包含。funcUploadRequest(){letx:Int=defaults.integer(forKey:"ObjectID")user_id=String(x)auth_key=defaults.value(forKey:"AuthKey")as!S

ios - 如何在 swift 中使用 Alamofire/URLSession.dataTask 发送带有参数的请求

我尝试了两种方法来POST请求调用API。Alamofire&URLSession.dataTask但我无法成功发送参数。这些是我尝试过的方法参数varparams:[String:AnyObject]?params=["Some_ID":"53"asAnyObject,"REQUEST":"SOME_API_NAME"asAnyObject]ONE-->AlamofireAlamofire.request(BaseURL,method:.post,parameters:params,encoding:JSONEncoding.default,headers:nil).response