如何使用Alamofire将参数发布到服务器?



我不知道我是否正确发布了参数?

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测试了它,它很成功。

我找到了答案,问题出在参数和编码上。

改成这样:

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

并且编码应该URLEncoding.httpBody

相关内容

  • 没有找到相关文章

最新更新