在`NSUrlSessionDownloadTask`中进行身份验证

时间:2017-08-08 11:53:55

标签: ios authentication nsurlsession nsurlsessiondownloadtask

我想使用NSUrlSessionDownloadTask在后​​台下载文件。

要下载,我需要执行以下操作:

  1. 执行POST以获取身份验证令牌
  2. 执行GET以使用标头中的身份验证令牌获取下载URL。我得到的URL包含查询参数中的临时令牌。例如。 https://myserver.com/file1?token=abc
  3. 使用NSUrlSessionDownloadTask
  4. 从上一步中获得的网址下载

    下载网址中的令牌有效期为3小时,之后我需要再次执行此过程并获取带有新令牌的新网址。

    我检查了NSUrlSessionDownloadTask,我有几个问题:

    1. 我看到支持cert auth和基本auth挑战,但不支持我使用的auth方案。因此,如果下载时间超过3小时(例如因为没有网络而中断),我需要重新验证并获取新的下载URL。是否有可以用来重新验证的回调?

    2. 如果我设法重新验证,那么我会获得一个新网址。我可以在NSUrlSessionDownloadTask的中间切换网址吗?换句话说,我可以使用其他网址继续下载吗? (它是相同的URL,但查询字符串中的标记不同)。

0 个答案:

没有答案