Tôi cập nhật dự án của mình lên Swift 3 và Alamofire 4. Tôi đã sử dụng Mã hóa tùy chỉnh, nhưng nó đã thay đổi thành các phương thức mã hóa khác. Tôi không thể tìm thấy giải pháp thay thế/tương đương như sau:Alamofire 4 Swift 3 ParameterEncoding Tùy chỉnh
alamoFire.request(urlString, method: HTTPMethod.post, parameters: [:], encoding: .Custom({
(convertible, params) in
let mutableRequest = convertible.URLRequest.copy() as! NSMutableURLRequest
let data = (body as NSString).data(using: String.Encoding.utf8)
mutableRequest.httpBody = data
return (mutableRequest, nil)
}), headers: headers()).responseJSON { (responseObject) -> Void in
switch responseObject.result {
case .success(let JSON):
success(responseObject: JSON)
case .failure(let error):
failure(error: responseObject)
}
}
Tôi cũng đã cố gắng bằng cách làm cho đối tượng URLRequest và yêu cầu đơn giản của nó cũng đem lại cho tôi lỗi
var request = URLRequest(url: URL(string: urlString)!)
let data = (body as NSString).data(using: String.Encoding.utf8.rawValue)
request.httpBody = data
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers()
alamoFire.request(request).responseJSON { (responseObject) -> Void in
switch responseObject.result {
case .success(let JSON):
success(JSON)
case .failure(let error):
failure(responseObject, error)
}
}
Đừng chỉ cho tôi một số hướng, làm thế nào để đính kèm httpbody với Alamofire 4
Có gì trong cơ thể bạn? Bạn chắc chắn rằng nó chuyển đổi thành một String? Và bạn muốn gửi nó như thế nào? dưới dạng JSON? hoặc chỉ là một String? –
@AlvinVarghese Dữ liệu thô –