【问题标题】:Send Alamofire request with parameters and also image in HTTP body发送带有参数的 Alamofire 请求以及 HTTP 正文中的图像
【发布时间】:2016-10-17 17:26:45
【问题描述】:

我有一个 Alamofire 请求

let parameters = ["key1":value1, "key2":value2, "keyn":valueN] as [String: AnyObject]

Alamofire.request(.POST, url, parameters: parameters, encoding: .JSON, headers: ["Authorization": auth_token]).validate().responseObject() {
// etc 
}

但是我需要在 HTTP 请求正文的“image”键下添加 jpg 图像,我该怎么做?我很难找到一个简单的 Alamofire 解决方案。我需要保留当前参数,但还要在请求正文中连同 POST 一起发送图像

【问题讨论】:

  • 我强烈建议不要在正文中上传图片,即使是 base64。最好将图像发送到存储桶,然后向上发送图像的 url 位置。否则,您将无需在图像上传时烧掉大量内存

标签: swift swift2 uiimage alamofire uiimagejpegrepresentation


【解决方案1】:

如何将图像转换为base64?

if let imageData = UIImageJPEGRepresentation(selectedImage, 0.30)
    {
        let strBase64:String = imageData.base64EncodedStringWithOptions(.Encoding64CharacterLineLength)
    }

*我也在压缩这里的质量。

【讨论】:

  • 我正在使用的 API 特别不需要 Base64,而是 HTTP 正文中的图像本身。以前从未上传过照片,所以这对我来说都是全新的
  • @TommyK 你找到怎么做了吗.. 我也需要将我的 json 和图像一起发送到 http 正文中作为多部分发送
猜你喜欢
  • 1970-01-01
  • 2018-12-11
  • 2020-03-22
  • 2016-01-31
  • 2019-03-15
  • 1970-01-01
  • 2017-05-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多