- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
(URL )' to expected argument type ' 参数'"?-6ren"> (URL )' to expected argument type ' 参数'"?-我目前正在将我的代码库更新到 Swift 3.0。我正在使用 Alamofire。我不得不将 Alamofire 更新到 4.0 ( Alamofire git repo )。我有一种下载媒体(视频)-6ren">
我目前正在将我的代码库更新到 Swift 3.0。我正在使用 Alamofire。我不得不将 Alamofire 更新到 4.0 ( Alamofire git repo )。我有一种下载媒体(视频)的方法,在迁移之前它工作得很好。使用 Xcode 的迁移工具后,我遇到了这个错误:“无法将类型 '(URL, HTTPURLResponse)-> (URL)' 的值转换为预期的参数类型 'Parameters?',这是一个 [String: Any]。到底是什么是这个Parameters对象吗?为什么它会抛出错误?迁移之前的这段代码和现在的唯一区别是现在NSURL被URL替换了。任何帮助都会很棒,因为我在过去的3个小时里一直坚持这个。
let mediaSourceURI: String = media.sourceURI
var filePath: URL?
let destination: (URL, HTTPURLResponse) -> (URL) = {
(temporaryURL, response) in
if let directoryURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first, let suggestedFilename = response.suggestedFilename {
filePath = directoryURL.appendingPathComponent("\(suggestedFilename)")
return filePath!
}
return temporaryURL
}
//ERROR BELOW: "destination" is highlighted, and says "Cannot convert value of type '(URL, HTTPURLResponse)-> (URL)' to expected argument type 'Parameters?"
RequestManager.mediaDownloadAlamofireManager.download(mediaSourceURI, method: .get, parameters: destination).response {
(request, response, data, error) -> Void in
self.completeOperation()
}
static let mediaDownloadAlamofireManager: SessionManager = {
let configuration = URLSessionConfiguration.default
configuration.httpAdditionalHeaders = SessionManager.defaultHTTPHeaders
let serverTrustPolicies: [String: ServerTrustPolicy] = [baseURL : .disableEvaluation]
let manager = SessionManager(
configuration: configuration,
serverTrustPolicyManager: ServerTrustPolicyManager(policies: serverTrustPolicies)
)
return manager
}()
最佳答案
1. 简单的错字
RequestManager.mediaDownloadAlamofireManager.download(mediaSourceURI,method: .get, parameters: destination)
RequestManager.mediaDownloadAlamofireManager.download(mediaSourceURI,method: .get, destination: destination)
DownloadFileDestination
– 您调用的参数
目的地 .它从:
(URL, HTTPURLResponse) -> (URL)
(URL, HTTPURLResponse) -> (URL, DownloadRequest.DownloadOptions)
let destination: (URL, HTTPURLResponse) -> (URL, DownloadRequest.DownloadOptions) = {
(temporaryURL, response) in
if let directoryURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first, let suggestedFilename = response.suggestedFilename {
filePath = directoryURL.appendingPathComponent("\(suggestedFilename)")
return (filePath!, [.removePreviousFile, .createIntermediateDirectories])
}
return (temporaryURL, [.removePreviousFile, .createIntermediateDirectories])
}
请注意,您不再只是返回 url,而且还有
more control over how Alamofire stores files on the file system .只需指定您想要的选项,例如 removePreviousFile 或/和 createIntermediateDirectories。它们现在以
Tuple 的形式返回。 .
关于ios - Swift 3.0 迁移后 Alamofire 错误 : "Cannot convert value of type ' (URL, HTTPURLResponse)-> (URL )' to expected argument type ' 参数'"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39864321/
我正在与执行 304 重定向的 REST API 作斗争;我需要的是获取重定向的目标 URL 并用浏览器打开它(我知道,这有点变态)。我成功拦截了重定向,感谢这个好小伙子reversepanda: h
尝试从 HttpUrlResponse 获取 header 时,我发现 iOS 模拟器不区分大小写,而真实设备区分大小写。 The web service returns an HTTP header
我正在开发一个登录应用程序,成功登录响应返回 2 个 cookie 后,我想从 HTTPURLResponse 的 header 中获取这 2 个 cookie,但我不能(httpResponse 字
这里有一个新的 Swift 人。我正在尝试弄清楚如何将多个 Alamofire 调用链接在一起。 我需要 从服务器 1 获取授权 token 从服务器 1 获取一些数据(需要授权 token ) 从服
我想调用一个 API 及其应用程序的一部分,但我想确保获得我正在调用的站点的状态代码(以防止运行时错误)。我无法获取 URLResponse 的状态代码,但我可以获取 HTTPURLResponse
我正在将我的应用程序更新到 Swift 3,并使用 Alamofire 处理对 REST 服务器的 API 调用。这是我的功能: extension Alamofire.Request { f
我正在制作一个 iOS 应用程序,但遇到了这个问题。 我的应用大部分只有西类牙语,所以我更改了开发语言(以困难的方式,更改 project.pbxproj 中的 developmentRegion =
转换到 Swift 3 时,我注意到一个奇怪的错误发生在从 HTTPURLResponse 读取 header 字段时。 let id = httpResponse.allHeaderFields["
我刚开始从 swift 2.2->3.0 转换我的旧项目。在这个过程中,我不得不将 Alamofire 更新到 4.0 版以获得对新 swift 版本的支持。我已经修复了大部分问题,但我还没有解决这个
我想使用 Alamofire 通过 Mailgun 发送电子邮件。我正在使用下面的代码发送请求,但我收到错误 Cannot call value of non-function type 'HTTPU
自从我更新了 Alamofire 之后,我得到了错误:Type Request has no member JSONResponseSerializer and cannot call value o
我在 codingforentrepreneurs.com 学习如何制作 iOS 应用 现在我在研究 Alamofire。 Xcode 是 8.3.3 这是错误命令。我不明白错误命令。 Cannot
我目前正在将我的代码库更新到 Swift 3.0。我正在使用 Alamofire。我不得不将 Alamofire 更新到 4.0 ( Alamofire git repo )。我有一种下载媒体(视频)
我是一名优秀的程序员,十分优秀!