如何在 Alamofire 分段数据上传中将 space 作为 space 而不是 %20 发送?

How to send space as space and not %20 in Alamofire multipart data upload?

我正在使用 Alamofire 发送图像文件的分段上传。这是我用来添加参数的代码。问题是,它发送 space 作为 %20(A k 作为 A%20K)。我想按原样发送 (A K)。这是添加params

的代码
URLEncoding.default.queryParameters(params).forEach { (key, value) in
if let data = value.data(using: .utf8) {
multipart.append(data, withName: key)
print(String(data: data, encoding: String.Encoding.utf8) as Any)
}

好吧,您正在使用 URLEncoding 查询参数,这些参数将始终如您所料 URL 编码

尝试从字符串中删除百分比编码,然后再将其转换为类似

的数据
if let data = value.removingPercentEncoding?.data(using: .utf8) {
   // do your stuff here
}

假设您的 params 对象是一个 [String: String] 值的数组,您可以简单地执行以下操作

params.forEach { (key, value) in
   if let data = value.data(using: .utf8) {
      multipart.append(data, withName: key)
      print(String(data: data, encoding: .utf8))
   }
}