Alamofire.download by post,参数不起作用
您好,我正在做下载文件的参数后。但服务器无法接收post参数。 但如果我对get和url参数做同样的事情。一切正常。 通过post和参数,Almofire.request也可以正常工作。但只有带有参数的Almofire.download-by-post不起作用 为什么Alamofire.download不通过post方法发送参数Alamofire.download by post,参数不起作用,alamofire,Alamofire,您好,我正在做下载文件的参数后。但服务器无法接收post参数。 但如果我对get和url参数做同样的事情。一切正常。 通过post和参数,Almofire.request也可以正常工作。但只有带有参数的Almofire.download-by-post不起作用 为什么Alamofire.download不通过post方法发送参数 var sourceStringURL : String = "\(tmp_url)download" let destination: DownloadRequest
var sourceStringURL : String = "\(tmp_url)download"
let destination: DownloadRequest.DownloadFileDestination =
{
_, _ in
let fileURL = URL(fileURLWithPath: destPath)
return (fileURL, [.removePreviousFile, .createIntermediateDirectories])
}
Alamofire.download(sourceStringURL, method: .post, parameters: ["id": idStr, "var": varStr], encoding: JSONEncoding.default, headers: nil, to: destination)
.downloadProgress
{
progress in
var tmpPercent : Int = Int(progress.fractionCompleted*100 / 1.0)
}
.response
{
response in
if let error = response.error
{
print(error)
}
else
{
//success
}
}
服务器通过Android中的改装库正确接收post请求。我刚刚发现,如果我将JSONEncoding.default更改为URLEncoding.default。
很好。感谢您发布此问题并回答@MomAndDad!!!我花了很多时间来解决同样的问题(.GET with nil params work,但如果params dictionary不是nil,则甚至不会调用完成块)。我希望有一个悬赏,我会给更多的分数(请接受你的解决方案作为答案:)