Alamofire不想在查询中接受我的参数 - 它在调用中说出额外的参数

时间:2016-10-17 22:35:25

标签: ios swift swift3 alamofire

我在swift中编写了一个函数,用于根据不同的参数获取数据。该功能的最开始是:

func makePostQuery(_ parameters: [String:AnyObject], url: String)
{

    Alamofire.request(url, parameters: (parameters), method: .post)
        .validate()
        .responseJSON { response in

            switch response.result {
            case .success:

但问题是(parameters)突出显示并引发错误:

Extra argument `parameters` in call

例如,参数构造如下:

var params = [
        "long": lon as AnyObject,
        "lat": lat as AnyObject,
        "startDate": DateCalc.convertValueToDate(defaults.float(forKey: "startDate")) as AnyObject
        ] as [String: AnyObject]

2 个答案:

答案 0 :(得分:1)

您的参数顺序错误。试试这个:

Alamofire.request(url, method: .post, parameters: parameters)

答案 1 :(得分:1)

如果您使用的是Alamofire 4.0,请使用

request(url, method: .post, parameters: parameters)

并且您不需要强制转换所有参数。就这样写:

let parameters: [String: AnyObject] = ["bar" : foo ,"baz" : 1]