甚至在文档认为正确的情况下,也可以进行参数调用

时间:2018-07-06 05:22:58

标签: swift alamofire

我正在尝试在Swift 4中使用Alamofire发出以下请求。但是,我不断收到错误消息,说Extra argument in call。这对我来说有点有趣,因为我在程序的其他地方有非常相似的请求,并且不会引发任何错误。

Alamofire.request(Constants.URL + "objects/\(id)/\(self.info)", method: .post) {

}

更有趣的是,我完全按照Alamofire文档中的说明复制了一个请求,但仍然收到完全相同的错误!

Alamofire.request("https://httpbin.org/post", method: .post) {

}

我已经在我的cocopods中检查了我的Alamofire版本,确实是最新版本Alamofire 4.7.0。我也尝试重新启动Xcode,但无济于事。我在做错什么吗,还是奇怪的事情在发生?

这是我的进口货

import UIKit
import Alamofire
import Locksmith
import SwiftyJSON

2 个答案:

答案 0 :(得分:0)

其Alamofire错误。我找到了答案。试试这个

let headers = ["Content-Type":"Application/json"]

        Alamofire.request(url, method: .post,encoding: JSONEncoding.default, headers: headers).responseJSON { response in
            print("Request  \(response.request!)")
            print("RESPONSE \(response.result.value!)")
            print("RESPONSE \(response.result)")
            print("RESPONSE \(response)")
            switch response.result {
            case .success:
                let json = JSON(response.result.value as Any)
                print("Json is =====\(json)")

                break

            case .failure(let error):
                break


            }
        }
    }

答案 1 :(得分:0)

我明白了。我忘了在函数声明的末尾编写.responseJSON。应该是:

Alamofire.request(URL, method: .post).responseJSON { response in

}

尽管如此,直接从文档中复制仍然产生错误仍然有点怪异。