【问题标题】:Extra argument 'method' in call(Alamofire)调用中的额外参数“方法”(Alamofire)
【发布时间】:2018-07-03 08:33:26
【问题描述】:

我正在使用 alamofire 发出 POST 请求。我在其中发送一个参数。但我面临Extra argument 'method' in call 的错误。错误显示在.post 方法上,我不知道为什么。我已经搜索过这个并得到了一些答案,但它们对我没有用。正如我所搜索的,他们说这是与参数类型有关的问题。我已经根据给定的答案更改了它,但没有奏效。我该如何解决这个问题?我的代码是这样的,

func ChoosePlan(completion:@escaping CompletionHandler){


    let param  =  [
    "username", username!
    ]

    let url = choosePlanUrl



    Alamofire.request( url!, method: .post, parameters: param, encoding: JSONEncoding.default, headers: nil).responseJSON { (response) in
        print("Request: \(String(describing: response.request))")   // original url request
        print("Response: \(String(describing: response.response))") // http url response
        print("Result: \(response.result)")// response serialization result

        if response.result.error == nil{
            self.status = (response.response?.statusCode)!
            if(self.status == 200){
                guard let data = response.data else {return}
                do{

                    if let json = try JSON(data: data).dictionary{
                        let  result = json["Response"]?.dictionary
                        print(result as Any)

                    }
                }catch let jsonErr{

                    print(jsonErr)
                }
            }

        }
        completion(true)
    }
}

错误看起来像这样,

【问题讨论】:

    标签: alamofire swift4


    【解决方案1】:

    诚然,错误消息具有误导性,但根本问题是您试图将数组而不是字典作为 parameters 值传递。

    改成

    let param  =  [
        "username": username!
    ]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-13
      • 1970-01-01
      • 2018-06-03
      • 2019-02-23
      • 1970-01-01
      • 2017-06-26
      • 1970-01-01
      • 2023-03-21
      相关资源
      最近更新 更多