问题标签 [urlsession]

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 回答
406 浏览

swift - Swift 4:Linux 上的多个网络请求

我正在尝试多次发出网络请求,并且core dumped在 linux 上遇到错误错误(macOS 可以)。

要么 要么request1()request2()中止

有时它会运行,但最常见的行为是出现以下错误:

情况1:执行4次后中止。

情况 1:它执行 1 次并在中止后显示错误堆栈。

环境:

任何人都可以帮助我吗?

0 投票
1 回答
1838 浏览

swift - Swift:URLSession.shared.dataTask 说状态码 304 = 200?

我正在请求一个 JSON-API,如下所示:

由于服务器进行缓存(我通过 CharlesProxy 验证),我希望状态码 304 但记录了 200 - 有没有办法获得“真实”状态码?

0 投票
2 回答
597 浏览

ios - 网址会话 | 身份验证质询响应 | NTLM

我知道How to Respond to an Authentication Challenge我们有NTLM Authentication3 个选项。

  • 提供身份验证凭据。
  • 尝试在没有凭据的情况下继续。
  • 取消认证请求。

但是只是想知道这里的想法,当我们使用第一个选项时,Provide authentication credentials我们传递用户名和密码URLCredential是否有泄露凭据的可能性,传递凭据是否安全,屏幕后面发生了什么?网络 API如何Apple将凭据发送到服务器?

是的,我们可以设置服务器域、故障计数等策略,但从安全的角度来看,它安全吗?来自 Man in Middle Attack ( MIMA) 还是其他什么?

0 投票
1 回答
967 浏览

ios - 将 CURL 转换为 URLRequest

我正在尝试将 Swagger 给我的以下 curl 请求转换为 URLRequest:

URL 和标头设置正确。我仍然收到回复:401 - 未授权。

我错过了什么吗?

0 投票
1 回答
390 浏览

ios - ios URLSessionDataTask 使用带有数据的简历

我正在使用 URLSessionDataTask下载视频并播放它们(我需要缓存,所以我正在使用

手动处理数据并将其提供给AVAssetResourceLoader)。

为了进行磁盘缓存,我必须将下载的数据保存到磁盘(终止应用程序时),这样当用户再次打开应用程序时,我可以继续下载数据。

我注意到它没有downloadTask(withResumeData:)类似的构造函数(构造函数的URLSessionDownloadTask想法几乎相同,但它没有func urlSession(_ session: URLSession, dataTask: URLSessionDataTask, didReceive data: Data)函数 :D )。现在我该如何将这两者结合起来?谢谢你,很抱歉这篇长文

0 投票
1 回答
418 浏览

swift - UI 更新不适用于 urlSession downloadTask didWriteData

目前,我在使用下载任务时遇到了更新用户界面的问题。以下函数应该更新用户界面,但它有时会起作用。为什么每次下载文件都不起作用?的日志NSLog每次都显示在调试器中!

progressLabel并且progressView目前都可用。

顺便说一句,我已经用同一个文件多次测试过它,有时它可以工作,有时它不能。

更新:我读到过使用这样的第二个调度队列

但这有时也有效。

0 投票
0 回答
554 浏览

ios - 修改 URLSession.shared 来实现证书固定,他们是怎么做到的?

在我的项目中,我们使用的是封闭源代码框架(Backbase,如果你想知道的话)。这是一个混合应用程序框架,提供了许多“开箱即用”的安全选项。其中之一是证书固定,我对它的实现很感兴趣。

我们只需要在配置文件中设置一个属性就可以了。通过框架完成的每个请求都通过URLSession.shared框架进行处理,并且固定是有效的。但是,如果我实例化自己的URLSession,则固定无效。但我也可以URLSession通过使用框架的NSURLSessionConfiguration.

对于那些只阅读代码的人:

对我来说,URLSession.shared它是不可变的,所以不可能改变它的工作方式。URLSession而要实现固定,唯一的方法是使用自定义创建一个新的URLSessionDelegate.

我的问题是:他们做了什么来获得这种行为?Method swizzling,Isa swizzling,还有别的吗?

编辑:我不是在寻找有关如何实施证书固定的详细说明。我更感兴趣的是如何编辑一个假定为不可变的静态属性,以及如何在URLSession不使用委托的情况下配置对象的行为。

0 投票
1 回答
3617 浏览

ios - API 调用给出协议错误

我正在使用 swift 构建一个 iOS 应用程序。我使用 URLSession 进行 API 调用。我使用 IP 地址进行了所有 API 调用,并且一切正常。现在要将应用程序放入商店,我将 IP 地址更改为域名。API 由邮递员工作。但在我的代码中,它给出了错误:
“HTTP 加载失败(错误代码:100 [1:100]),错误结束 - 代码:100,操作无法完成。协议错误”。
我已经使用了任意负载。我尝试将“https”和“http”作为协议。我错过了什么?
Swift 3
Xcode 9
测试设备 iOS 11

编辑: 如果我使用服务器的 IP 地址,则不会出现此问题。因此,我认为我的请求或其格式没有错误。仅当我将 IP 地址更改为域名(https://myServerAddress.com)时才会出现错误。

0 投票
0 回答
497 浏览

ios - 没有 3rd 方库的 Swift OAuth2 示例

我一直在做一些使用 Postman 连接到 OAuth 服务的测试。一切正常,我可以看到 JSON 响应。但是,Postman 生成的代码不包含任何标记。

我将如何在 Swift 中做到这一点?我也不想使用任何 3rd 方库,因为我想学习如何做到这一点。

这是 Postman 生成的代码。没有关于如何生成令牌的内容。

谢谢

0 投票
1 回答
101 浏览

swift - 快速的语法解释。关闭?理解这段代码。可选不展开

我正在尝试下载一些图像并在Stack Overflow上找到了解决方案

它使用了一些我不理解的闭包语法。

它创建了一个函数,并且允许转义完成参数,对吗?然后这个函数返回一个 URLSession?return 语句在哪里?

“数据、响应、错误”声明是什么意思?

然后它调用一个名为 completion(...) 的函数,它在哪里定义和实现?

我想这是一些我不知道的语法。关于在哪里阅读有关此内容的任何提示?

然后我调用了这个函数:

self.m_images 是一个数组:[Any],在我的 viewController 顶部声明如下:

打开包装时出现错误,它仍然为零:为什么?我只是附加了一张图片。该图像确实存在,我打印它并且它工作正常。