问题标签 [nsurlsessionconfiguration]

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.

0 投票
0 回答
1127 浏览

ios7 - NSURLSessionDownloadTask 在位置 URL 处没有文件完成

NSURLSessionDownload我使用任务和NSURLSession后台配置启动了一堆下载。大多数情况下一切正常,但有时回调方法中location指定的位置没有临时文件。delegate它发生在模拟器和设备上。这是代码,但一切看起来都非常简单,就像他们拥有 SimpleBackgroundTransfer 示例一样。

另外,奇怪的是,当这个奇怪的事情发生时,没有NSURLSessionDelegate调用其他方法,只是URLSession:downloadTask:downloadTask:location位置 URL 没有文件(downloadTask.originalRequest实际上有一个有效的下载 URL 和 downloadTask 中响应的状态代码是 200)。
如果发生这种奇怪的事情,它会发生在所有预定的下载中,就像系统根本无法创建文件一样。URLSession:downloadTask:downloadTask:location被立即调用。
重新启动设备/模拟器似乎总是有帮助。重新启动应用程序永远不会有帮助。
有没有人经历过这样的事情?

0 投票
5 回答
16441 浏览

ios - NSURLSessionTask never calls back after timeout when using background configuration

I am using NSURLSessionDownloadTask with background sessions to achieve all my REST requests. This way I can use the same code without have to think about my application being in background or in foreground.

My back-end has been dead for a while, and I have taken that opportunity to test how does NSURLSession behave with timeouts.

To my utter surprise, none of my NSURLSessionTaskDelegate callbacks ever gets called. Whatever timeout I set on the NSURLRequest or on the NSURLSessionConfiguration, I never get any callback from iOS telling me that the request did finish with timeout.

That is, when I start a NSURLSessionDownloadTask on a background session. Same behavior happens the application is in background or foreground.

Sample code:

However, when I use the default session, then I do get an error callback after 30seconds (the timeout that I set at request level).

Sample code:

I cannot seem to find in the documentation anything that suggests that the timeout should behave differently when using background sessions.

Has anyone bumped into that issue as well? Is that a bug or a feature?

I am considering creating a bug report, but I usually get feedback much faster on SO (a few minutes) than on the bug reporter (six months).

Regards,

0 投票
1 回答
1734 浏览

ios - 在后台使用 NSURLSession 逐个下载 100 个文件的列表

我已经使用NSURLSession. 下载管理器有一个按优先级顺序下载的文件的排队列表。当应用程序处于后台并且代理调用被正确调用时,下载工作正常。但是当应用程序进入后台时,即使下载完成也需要太多时间

NSURLSession delegate:- **URLSession:(NSURLSession *)session downloadTask:(NSURLSessionDownloadTask *)downloadTask didFinishDownloadingToURL:(NSURL *)downloadURL

被叫。有时根本没有调用代表,当我来到前台时,会调用下载任务代表。这种延迟有什么原因吗?

0 投票
1 回答
1664 浏览

ios - NSURLSession 不发送 HTTPAdditionalHeaders 的问题

我似乎无法让我的网络代码工作。在过去的两天里,我至少花了几个小时浏览文档和谷歌,但我无法弄清楚。无论出于何种原因,我似乎NSURLSession没有发送标题。我在 Postman for Chrome 中执行了正确的请求,并使用了这些确切的参数,所以我知道我没有发送不正确的数据。我继续收到一个错误,我可以通过删除标头参数在 Postman 中重现该错误。

代码:

0 投票
4 回答
27773 浏览

ios - 使用 NSURLSessionDataTask 显示文件下载进度

我想显示特定文件的文件下载进度(收到多少字节)。它适用于 NSURLSessionDownloadTask 。我的问题是我想用 NSURLSessionDataTask 实现同样的效果。

这是将文件接收到 NSData 并写入文件夹的代码:

写入或完成数据任务后(收到文件后)我正在获取文件大小:

NSLog(@"SIZE : %@",[NSByteCountFormatter stringFromByteCount:data.length countStyle:NSByteCountFormatterCountStyleFile]);

但我想显示它的当前字节接收状态,这可能与 NSURLSessionDataTask 吗?

0 投票
2 回答
1127 浏览

ios - 多个文件下载有问题

目前我正在实现一个文件下载应用程序。在我的应用服务器中有大约 2500 个资源文件,我需要将这些文件从服务器下载到我的文档目录。

我的代码:

问题 :

有时它会下载第一个文件并停在那里,下次它不会下载任何东西。我到现在都找不到问题,因为这个问题我浪费了将近一天。请帮我找出问题所在。提前致谢。

0 投票
1 回答
174 浏览

ios - 检查 NSURLSessionDataTask 的响应值

我是 iOS 开发的新手,正在开发我的第一个应用程序。我正在与需要用户使用其用户名和密码登录的 Web 服务进行交互。在将其保存在钥匙串中之前,我想检查并确保他们输入了正确的用户名和密码,因此我正在使用那里的凭据进行简单的获取请求。我想检查我得到的响应,看看我是否收到错误消息。这是我编写的代码,它对 Web 服务执行 GET 请求。

我想检查我jsonObject的错误代码,但我可以这样做[dataTask resume]吗?有没有更好的方法来检查返回码?我相信jsonObject会返回 json,所以我想我想检查标题中的返回值,但我不完全确定。对不起,如果这是一个简单的问题,但我是新手,有点困惑。任何帮助将不胜感激!

0 投票
2 回答
9327 浏览

ios - NSURLSessionConfiguration HTTPAdditionalHeaders 未设置

授权标头设置在 中NSURLSessionConfiguration,但未附加到NSURLSessionDataTask. 这是一个错误Foundation framework吗?

0 投票
4 回答
2174 浏览

ios - iOS NSURLSessionUploadTask 响应数据

我已经成功实现了 NSURLSessionUploadTask 并在后台和前台工作。但是读取响应数据时出现问题。

这些是上述两个 NSLog 的输出

1 数据:{"成功":true,"数据":[{"uuid":"8BE7DF37-9DA1-44D2-B48C-D012F699A9B1","id":266626},{"uuid":"3406D865-1A41-4FC6 -BA0B-0638F17757CC","id":266656}],"errors":[],"entityName":"LeadProfile"} 结束数据

最后数据:{"success":true,"data":[{"uuid":"8BE7DF37-9DA1-44D2-B48C-D012F699A9B1","id":266626},{"uuid":"3406D865-1A41 -4FC6-BA0B-0638F17757CC","id":266656}],"errors":[],"entityName":"LeadProfile"}{"success":true,"data":[{"uuid":"8BE7DF37 -9DA1-44D2-B48C-D012F699A9B1","id":266626},{"uuid":"3406D865-1A41-4FC6-BA0B-0638F17757CC","id":266656}],"errors":[]," entityName":"LeadProfile"} 结束数据

我想知道为什么这会给我一个上传任务两个不同的响应。self.responseData每个位置有什么不同?

有人认为这是因为苹果网站上提到的原因吗?(因为 NSData 对象通常是由许多不同的数据对象拼凑而成的,所以尽可能使用 NSData 的 enumerateByteRangesUsingBlock: 方法来遍历数据而不是使用 bytes 方法(它将 NSData 对象扁平化为单个内存块)开发人员。苹果网

0 投票
1 回答
902 浏览

ios - 没有缓存的 iOS NSURLSessionConfiguration 无法按预期工作

我在 iOS7 中面临安全问题。我想通过执行以下配置来建立我的 url 连接而不进行任何缓存:

当我运行 NSURLSessionDataTask 时,仍然在文件系统上创建了带有条目的文件 Cache.db-wal。

谁能告诉我如何解决这个问题?我希望文件系统上的缓存文件中没有条目。

BR,马丁