如何将 UIImage 转换为 Django 理解的数据

Posted

技术标签:

【中文标题】如何将 UIImage 转换为 Django 理解的数据【英文标题】:How to convert UIImage to data that Django understands 【发布时间】:2022-01-05 05:28:47 【问题描述】:

这似乎是一个愚蠢的问题,但我对 UIImage 有疑问。 我的应用程序与我的 Django 服务器通信,为此,我正在使用 Alamofire。我需要传递一个图像,但我不知道如何将 UIImage 转换为适当的数据,以便服务器能够理解。 我的代码目前如下所示:

let param = ["image": image] // <- 'image' is a UIImage
AF.request(method: .post, parameters: param) // and so on

服务器说表单无效。对于我的服务器,我使用的表单如下所示:

class UploadImageForScanForm(forms.Form):
    image = forms.ImageField()

如何将 UIImage 转换为适当的数据格式,以便我的 Django 服务器可以理解并使用它?

【问题讨论】:

你的 Django 服务器能理解什么? @Sweeper,请看这个:***.com/questions/24727697/… 【参考方案1】:

由于这是一个“表单”,我想您应该使用 POST 方法而不是 GET 请求发送包含图像的多部分表单。

let image = // get your UIImage in some way
guard let png = image.pngData() else 
    // there is no PNG representation for the UIImage
    // you can also try jpegData
    return 


AF.upload(multipartFormData:  form in
    form.append(png, withName: "image", fileName: "image.png", mimeType: "image/png")
, to: someURL)
    // and then you can get the response in whatever way you like
    .responseFoo  response in
        ...
    

【讨论】:

感谢您的回答!我会看看那个。

以上是关于如何将 UIImage 转换为 Django 理解的数据的主要内容,如果未能解决你的问题,请参考以下文章

如何将 UIImage 转换为 NSData 或 CFDataRef?

如何将 UIImage 转换为 CIImage,反之亦然

如何将 PFFile 数组转换为 UIImage 数组?

如何快速将 PFFile 转换为 UIImage?

如何将 UIView 转换为高分辨率的 UIImage?

如何将(编辑的)UIView 转换为 UIImage?