【问题标题】:Alamofire does not want to accept my parameters in the query - it says extra argument in the callAlamofire 不想在查询中接受我的参数 - 它在调用中说额外的参数
【发布时间】:2016-10-17 22:35:24
【问题描述】:

我在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]

【问题讨论】:

    标签: ios swift swift3 alamofire


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

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

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

      而且你不需要强制转换所有参数。就这样写吧:

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

      【讨论】:

        猜你喜欢
        • 2023-03-21
        • 2018-08-26
        • 2018-07-03
        • 2017-01-22
        • 2019-04-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多