【问题标题】:Uploading multiples image with Django Rest Framework in a single POST array?在单个 POST 数组中使用 Django Rest Framework 上传多个图像?
【发布时间】:2016-05-16 19:25:21
【问题描述】:

大家好,我在使用 DRF 获取多个带有数组的帖子中的多个图像时遇到了问题。

我已经阅读了很多关于这个主题的内容,最常见的解决方案是对字符串进行编码 64,但这不是我想要的方法,因为它占用了我们没有的大量资源。

另一个,是 DRF 最常用的,请求方法来解析内容类型中的标头。 http://www.django-rest-framework.org/api-guide/parsers/#how-the-parser-is-determined 但如果我是正确的,这使用 multipart/form-data 的方式来做到这一点。

我真正想要的是一种方法,它只接收 Json 数组中的数据,这是通过使用 appcelerator 中构建的移动应用程序,用户发送图像数组。

如果至少可以的话,如果有人回答我,我会很高兴,因为我发现的所有信息都只指向 multipart/form-data。

顺便说一句,可以上传单个文件,但不能上传多个文件,我已经这样做了:

ukeys = request.FILES['fotos']

感谢您的宝贵时间。

【问题讨论】:

    标签: python django rest django-rest-framework


    【解决方案1】:

    我真正想要的是一种方法,它只接收 Json 数组中的数据,这是通过使用 appcelerator 中构建的移动应用程序,用户发送图像数组。

    您需要检查底层请求并找出准确在线上实际发送的内容。 JSON 不支持文件原语,因此“图像数组”实际上可能是具有某种编码的字符串数组。

    request.FILES['fotos']

    对于多个值,请使用request.FILES.getlist('fotos')

    【讨论】:

    • 当我收到一个文件时,它返回文件名以 unicode 编码:u' foto1.jpg 但是当我使用 getlist 时,它只返回一个空数组。 [] 更新:我尝试打印 ukeys = request.FILES.getlist('fotos') 的变量,并且只给我一个空数组,但如果打印 request.Files,它会给我值用 unicode 编码,我什至可以使用 For 来获取图像名称。现在我唯一的问题是应用程序如何向我发送“图像数组”
    猜你喜欢
    • 2019-03-24
    • 2022-06-14
    • 1970-01-01
    • 2020-07-24
    • 2016-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-17
    相关资源
    最近更新 更多