如何将Django中的InMemoryUploadedFile转换为flickr API的fomat?

2024-10-06 11:21:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个将文件上传到Flickr的类。文件类型为
“在记忆中”。

我想知道如何将“InMemoryUploadedFile”文件中的数据转换或传递为flickr的API格式?

例如:

{'photo': ('image.jpg', <InMemoryUploadedFile: image.jpg (image/jpeg)>)}

上载API:https://www.flickr.com/services/api/upload.api.html

错误代码

<?xml version="1.0" encoding="utf-8" ?>
<rsp stat="fail">
    <err code="4" msg="Filesize was zero" />
</rsp>

Tags: 文件数据记忆imageapi格式flickrjpeg
2条回答

InMemoryUploadedFile是围绕文件对象的wrapper。可以使用file属性访问文件对象。因此,在您的示例中,尝试将其传递给Flickr API:

{'photo': my_in_memory_file.file}

如果这不起作用,请编辑您的问题,在您提交请求时使用的代码周围添加更多详细信息。

InMemoryUploadedFile onObject中的数据已被提取并通过以下方式成功传递给Flickr:

import StringIO
file.seek(0)
file_handle = StringIO.StringIO(file.read())
{'photo': ('image.jpg', file_handle)}

谢谢

相关问题 更多 >