问题标签 [nsurlsessiondatatask]

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 投票
1 回答
3257 浏览

nsurlsession - 带有标识符的背景 URLSession 的问题

我在我的项目中尝试使用此代码在后台下载大文件,它工作正常。我开始在 UIViewController 中下载。如果我转到另一个视图并返回 UIViewController ,它会停止重新加载进度条。

我得到了带有标识符的背景 URLSession 的问题已经存在!。我想在每次加载 UIViewController 时创建新会话。我想在关闭视图控制器时使所有后台会话无效。我尝试了所有可能性来解决这个问题,但没有成功。

点击这里

0 投票
1 回答
499 浏览

ios - 对于非常具体的字符串,dataTaskWithRequest 花费的时间太长

我正在使用 swift 创建一个 IOS 应用程序。最近,我遇到了一个奇怪的错误。我正在尝试检查 url 是否有效,因此,我正在使用 url 创建一个请求并检查响应。我使用 NSUrlSession 的 dataTaskWithRequest 来完成这项任务。奇怪的错误是,如果 URL 是alibaba,响应会在很长一段时间后返回(有时超过 20 秒)。为什么会这样?就我而言,它只发生在这个特定的 url 上。这是一些代码,虽然它不是必需的。

我会很感激一些帮助家伙!

0 投票
1 回答
326 浏览

ios - iOS:AFNetworking 多次下载。请求操作超时

我尝试使用 AFNetworking 3.0 GET-request 下载大量文件 >= 500。总负载重量大约等于 ~ 1.7 Gb。目前,我使用:

我认为,所有请求和超时计时器都会立即启动,但设备无法同时启动所有这些请求并暂停其中一些请求。我该如何解决这个问题?

0 投票
1 回答
2141 浏览

ios - 后台会话中的 NSURLSessionDataTask

我想在我的 iOS 应用程序处于后台时发出一个空的 POST 请求并读取响应标头。查看文档,它明确指出后台支持上传和下载任务,但有两个问题:

  1. 我不需要上传内容,所以我不想创建一个空文件来使用。
  2. 我需要获取标题,因此下载任务不提供必要的委托回调。

这给我留下了一个NSURLSessionDataTask文档指出:

注意:在 iOS 8 和 OS X 10.10 之前,后台会话不支持数据任务。

但是,另一个文档页面在同一标题下声明(背景传输注意事项):

仅支持上传和下载任务(无数据任务)。

哪个文档页面是正确的?后台会话是否支持没有数据上传的NSURLSessionDataTasks ?

0 投票
1 回答
406 浏览

ios - NSURLSessionDataTask 在完成处理程序中返回数据,Swift 2.0

我已经阅读了关于同一问题的其他几个问题,但不知何故,完成处理程序对其他答案的工作方式不同。此外,这些答案来自 2015 年,这让我想知道它是否特定于 Swift 1.x

无论如何,这是我的问题。我正在进行常规的 GET 调用,我想将下载的数据返回给调用方法。不知何故,这不想为我工作。

这是我正在做的代码(都在一个 ViewController 类中):

使用此代码,行completionHandler("test")编译失败并Cannot call value of non-function type String?显示消息。

所以我的问题是:

  1. 如何创建一个可以作为参数传递给方法的 conpletionHandler?

  2. 为什么完成处理程序失败?

如果没有完成处理程序,该方法只会在网络调用完成之前返回一个空值,正如预期的那样。

谢谢。

0 投票
1 回答
318 浏览

objective-c - 带有 NSURLSessionDataTask 的 Xcode 循环 URL 数组

我必须比现在更难……或者实施我在网上看到的解决方案不正确。

我有一个 URL 数组,我想循环并按顺序将结果推送到字典或数组。如何让它在运行下一个请求之前等待字典更新?基本上我想在后台线程中同步进行调用。

这是我称之为下载的地方:

0 投票
1 回答
592 浏览

swift2 - Swift 2 如何在继续代码之前等待 NSURLSessionDataTask 完成

在这段代码中,request.getStatusCode()两者request.getIsConnected()都在task块内的代码执行之前执行

即 dataTask.resume() 直到任何后续代码执行后才会执行,无论是同一函数、类或单独类中的代码。

我尝试将函数调用放在主队列(串行)、全局队列(并发)、手动串行队列、手动并发队列和 NSOperationQueue 中,然后都是一个 while 循环以等待关闭完成。

环形。

我已经在这段代码中留下了任何 GCD 或操作,以避免我尝试过的每个队列场景的混乱。

ViewController.swift

URLVisitor.swift

请求.swift

0 投票
2 回答
75 浏览

macos - Swift 2 OSX 如何在包含数据任务的一系列完成结束时使用循环?

我为每个函数使用完成块(以避免使用 while isDoingSomething 循环)。

当所有块完成时,我得到了预期的数组。但是当我尝试遍历这个最终数组时,它会按预期连续循环,但不会为每次迭代恢复NSURLSessionDataTask输入。Request.sendRequest(..)

ViewController.swift

RunManger.swift

URL访问者

要求

0 投票
0 回答
218 浏览

swift2 - AFNetworking 3 和 Swift 2-无法转换值 NS​​URLSessionDataTask

当尝试从 AFHTTPSessionManager 访问 GET 函数时,我收到错误,输入操作:

“无法将类型 '(NSURLSessionDataTask!, AnyObject!) -> Void' 的值转换为预期的参数类型 '((NSURLSessionDataTask, AnyObject?) -> Void)?'”

AFHTTPSessionManager.m GET 函数:

这一切都用于 AFHTTPRequestOperation,它不再是 AFNetworking 3 的一部分,已弃用 NSURLConnection。希望有人能对此有所了解,并在此先感谢您!

0 投票
0 回答
162 浏览

ios - 如何取消 NSURLSessionDataTask 'Inside' A RACSignal

我正在使用 Reactive Cocoa 将多个网络请求合并和收集在一起(作为 RACSignals),如下所示:

每个单独的 RACSignal 都是这样创建的:

这一切都很好。我的问题是:有没有办法取消NSURLSessionDataTask单个 RAC 信号中的实际请求(即 )?我subscribeNext:在合并信号上使用了一个块,它返回一个RACDisposable- 我可以处理它,但这适用于整个合并操作而不是单个信号。我在看类似的东西,takeUntil:但这被描述为“释放信号”,我不确定这是否会反过来取消它包含的请求。任何帮助表示赞赏。