alamofire - Alamofire.download 通过邮寄方式下载,参数不起作用
问题描述
您好,我正在通过带有参数的帖子下载文件。但服务器无法接收发布参数。但是如果我用 url 参数做同样的事情。一切正常。Almofire.request 也可以通过带有参数的帖子正常工作。但只有 Almofire.download 通过带有参数的帖子不起作用。
为什么 Alamofire.download 不通过 post 方法发送参数?
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 中的 Retrofit 库正确接收发布请求。
解决方案
我刚刚发现如果我将 JSONEncoding.default 更改为 URLEncoding.default。它工作正常。
推荐阅读
- javascript - 如何从这些对象中获取值
- php - 方法 Illuminate\\Auth\\RequestGuard::attempt 不存在
- php - 从 PHP 读取 Windows 安装程序(MSI 文件)属性
- github - 你如何限制贡献者在没有 Fork 的情况下推送到私有存储库?
- javascript - React元素中的鼠标滚轮/滚动事件没有溢出(图片缩放)
- kendo-ui - 用于角字符的 Kendo UI 以文本形式导出为 PDF
- python - 在我尝试在我的 Big Sur / Apple 硅 Macbook 上升级系统 PIP 后,它似乎坏了
- python - 使用python打印一个月的前10个工作日
- javascript - 读取目录同步中的读取文件同步不会在编译下一行之前等待
- tableau-api - Tableau 表未呈现?