Как опубликовать параметры на сервере с помощью Alamofire? - PullRequest
0 голосов
/ 31 мая 2018

Не знаю, правильно ли я выкладываю параметры?

func removeCart(rowId: Int, completion: @escaping (Bool)->()) {
    let urlString = "\(BaseUrl.Protina.rawValue)/ApiShoppingCart/UpdateCart"
    let headers: HTTPHeaders = ["Content-Type": "application/form-data"]
    let parameters : [String: Any] = ["removefromcart": rowId]

    Alamofire.request(urlString, method: .post, parameters: parameters,encoding: JSONEncoding.default, headers: headers).responseJSON { response in

        switch response.result {
        case .success(let data):
            let jsonData = JSON(data)
            print(jsonData)
            completion(true)

        case .failure(let error):
            print(error)
        }
    }
}

, когда пользователь пытается удалить товар из корзины, вышеупомянутая функция срабатывает, и после того, как предмет удаляет остальную частьтовары из корзины вернутся.

Кроме того, я проверил это с postman, и оно прошло успешно.

1 Ответ

0 голосов
/ 31 мая 2018

Я нашел ответ, проблема была в параметре и кодировке.

Изменил это на:

let parameters: [String:Any]= [
    "removefromcart": rowId,
    "Content-Type" : "application/form-data"
]

И кодировка должна быть URLEncoding.httpBody

...