Swift Alamofire请求链接-无法调用非函数类型的值';httpurresponse';
一个新来的敏捷的家伙。我正试图找出如何将多个Alamofire调用链接在一起 我需要Swift Alamofire请求链接-无法调用非函数类型的值';httpurresponse';,swift,alamofire,swift4,Swift,Alamofire,Swift4,一个新来的敏捷的家伙。我正试图找出如何将多个Alamofire调用链接在一起 我需要 从服务器1获取身份验证令牌 从服务器1获取一些数据(需要身份验证令牌) 从服务器2获取身份验证令牌 根据步骤2中的值从服务器2获取更多数据 我在这篇文章中尝试了以下例子: 不幸的是,这些示例中没有一个适用于Swift 4 我决定选择第二种方式,但还是要坚持下去 无法调用非函数类型“HTTPURLResponse?”的值 putRequest和getRequest行都有错误。我不知道这意味着什么,也不知道如何修
HTTPURLResponse?”的值
putRequest
和getRequest
行都有错误。我不知道这意味着什么,也不知道如何修复它
我当前的代码:
import UIKit
import PromiseKit
import Alamofire
import SwiftyJSON
class ViewController: UIViewController {
let URL = "http://httpbin.org/"
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func runPutRequest() {
let putRequest = Alamofire.request("\(URL)/get")
putRequest.response { [weak self] putRequest, putResponse, putData, putError in
if let strongSelf = self {
// Probably store some data
strongSelf.runGetRequest()
}
}
}
func runGetRequest() {
let getRequest = Alamofire.request("\(URL)/get", method: .get)
getRequest.response { [weak self] getRequest, getResponse, getData, getError in
if let strongSelf = self {
// Probably store more data
strongSelf.processResponse()
}
}
}
func processResponse() {
// Process that data
}
func reloadData() {
// Reload that data
}
}
任何帮助都将不胜感激。对于response
闭包,您的返回参数太多了,实际上只需要一个DataResponse
参数。此代码适用于我:
func runPutRequest() {
let putRequest = Alamofire.request("\(URL)/get", method: .put)
putRequest.response { [weak self] response in
if let strongSelf = self {
// Probably store some data
strongSelf.runGetRequest()
}
}
}
func runGetRequest() {
let getRequest = Alamofire.request("\(URL)/get", method: .get)
getRequest.response { [weak self] response in
if let strongSelf = self {
// Probably store more data
strongSelf.processResponse()
}
}
}