问题标签 [nsurlsession]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 升级到 AFNetworking
我正在从不再属于该项目的开发人员手中接手一个旧的 iOS 项目 - 该应用程序正在被重写,因此我将仅支持 iOS7 及更高版本。
所以,我想使用 AFNetworking 2.0 而不是 ASIHTTPRequest——这背后的原因是 NSURLSeesion。AFNetworking 2.0 支持 NSURLSession 并且我可以让我的应用程序在机会时在后台下载内容(根据 Apple - 必须使用 NSURLSession 并打开后台获取模式,才能工作?)
首先让我说我是 iOS 的新开发人员,网络方面的东西让我有点不知所措 - 但我决心尽可能多地了解它。我也阅读了 AFNetworking 文档,但我担心因为某些术语(请求、响应、灭菌等)我无法理解——我并没有 100% 掌握它们。
因此,我查看了以前的开发人员用来构建 GET / POST 请求的 ASIHTTPRequest 代码 - 这是他们使用的代码:
我正在尝试理解此代码并将其升级为使用 AFNetworking V2.0。我认为,仅用 AFHTTPRequestOperation 替换 ASIHTTPRequest 不会成功,对吗?
ios - NSURLSessionDownloadTaskDelegate JSON 响应
我正在运行一个后台 NSURLSession 会话,并且我试图找出一种方法来从一个 NSURLDownloadTaskDelegate 回调中获取 JSON 响应。我已将会话配置为接受 JSON 响应。
我可以使用以下回调轻松解析 NSURLSessionDownloadTasks 的 JSON 响应。它以 NSURL 的形式将 JSON 响应写入沙箱。
我的问题是如果我遇到错误,上面的回调不会被调用,它似乎只有在成功下载的情况下才会被调用。由于我使用的是后台会话,因此无法使用任何 NSURLSessionDataDelegate 回调。我只能使用 NSURLSessionDownloadTaskDelegate 和 NSURLSessionTaskDelegate ,而我可以使用以下回调获得任务响应。我没有在响应中看到 JSON。
NSURLConnection有一个didReceiveData参数,它为我们提供了一个NSData对象,我们可以使用它来获取 JSON 响应。除了NSURLDataTask之外,我在NSURLSession的委托回调中没有看到这一点,但我们不能在后台使用数据任务,那么我们应该如何获取 JSON 响应呢?任何帮助表示赞赏
编辑:
我通常在后台运行应用程序时遇到这个问题(主要是当它被踢出内存而不是暂停时)。我已经在 appDelegate 中实现了回调,并且我能够与会话重新关联。我认为 didFinishDownloadingToURL 仅在成功完成任务的情况下被调用,但是当任务失败时,不能保证它会被调用但在另一方面,每次发生故障时都会调用 didCompleteWithError
ios - NSURLSessionConfiguration timeoutIntervalForRequest vs NSURLSession timeoutInterval
使用新的 NSURLSession,现在在用于创建会话的 NSURLSessionConfiguration 对象上有一个 timeoutIntervalForRequest。
但是NSURLRequest对象上还有一个timeoutInterval,可以用来在会话中创建NSURLSessionTask。
我的问题是,如果配置的 timeoutIntervalForRequest 设置为 30,但用于创建任务的 NSURLRequest 的 timeoutInterval 为 60,那么实际会使用哪个超时间隔?
ios - iOS 7 后台上传和 POST 请求
我需要在每次上传之前和之后使用其他 HTTP POST请求在后台上传文件。
以前我使用的是beginBackgroundTaskWithExpirationHandler,它在 iOS 6 之前运行良好,但从 IOS 7 开始,它被限制为大约 180 秒,这是一个问题。
我已经阅读了有关 NSURLSession 的文档,我们有后台传输服务。但问题是它只允许在后台上传和下载。它不允许我在后台每次上传后发出 POST 请求。
那么有什么方法可以在后台上传的同时发出 POST 请求?
任何正确方向的提示将不胜感激。
ios - 如何在使用 NSURLSession 时传递凭据
我正在尝试使用 utorrent webui 登录到我自己的计算机。
目前我正在使用以下代码:
我可以在使用桌面网络浏览器时很好地看到该页面,但是,在我的应用程序上它总是返回 401 错误(未授权)。
我猜这是因为没有使用凭据?如果是这样,正确的使用方法是什么?也没有调用 NSURLSessionDelegate 方法。还有什么我必须做的吗?
ios - How to use NSURLSession to post some properties and a image
I have a node.js as backend server. And it has a post method accept a title param and a latitude and longitude param and a image. So, I am not only post a image but with other params together. In the node.js, title -> uitextview's text latitude & longitude - > cllocation and a image.
the node.js corresponding method is a form.
How to use NSURLSessionUploadTask to post them to the server.
ios - 重新启动应用程序后如何恢复下载任务(NSURLSessionDownloadTask)
我添加“下载任务”并终止应用程序进程。
运行app后,获取[manager downloadTasks];并恢复所有。但文件未加载到文档目录中。
我使用 AFNetworking 2.0 ( https://github.com/AFNetworking/AFNetworking )
ios - 如何在块内分配变量?
从其他问题看来,我所要做的就是在我的变量前面添加 __block,但是,它似乎对我不起作用。
在块内,使用 NSLog() 检查时,令牌被正确分配。如果我在返回令牌之前再次检查它;它变为 NULL。
objective-c - 在 NSURLSessionBackground 中为 NSURLSessionDownloadTask 获取 Json 响应
我正在使用 NSURLSessionDownloadTask 下载带有 iOS 7 背景会话的图像和视频,它工作正常。
现在,正如 Apple 文档在后台 DataTask 建议的那样,DataTask 不起作用,只有 Uploadtask 和 downloadtask 会起作用。
所以,通过这个下载任务,我需要获取 json 数据。所以我用 url http://www.abc.com/downloads/weather_sample/test.php?format=json测试它所以在这个方法
我没有得到适当的回应,它是
虽然我可以将 test.php 文件存储在我的文档目录中,然后能够解析为 json。但为此我必须将该文件存储在我的文档目录中,我没有直接得到响应。
ios - 带有 NSURLSession 的 HTTP PUT 方法
我正在NSURLSession
为 iOS 7 SDK 中引入的类而苦苦挣扎,我被困在一个点上,我需要用方法调用我的REST APIPUT
。
我已经实现了GET
和POST
方法,使用它可以正常工作:
不幸的是,设置httpMethod
为PUT
似乎不起作用(它表现为GET
)。从 cURL 控制台调用 *url 的内容可以正常工作 - 所以 API 的路径是可以的。
如何使用创建PUT
对我的 API 的有效请求NSURLSession
?