gpt4 book ai didi

django - 使用 django-rest-framework 提供图像

转载 作者:行者123 更新时间:2023-12-04 18:03:43 25 4
gpt4 key购买 nike

我正在尝试从基于 django-rest-api 的 api 提供图像。

到目前为止,我有一个非常基本的 api View ,它加载图像及其 mimetype 并返回它。

@api_view(['GET'])
def get_pic(request, pk=None, format=None):
//get image and mimetype here
return HttpResponse(image, content_type=mimetype)

这一直运行良好,但我已经在 iOS 上的一些新图像库上对其进行了测试,发现 API 返回了 406 错误。

我相信这是因为客户端正在发送接受图像/*,此 api View 不异常(exception)。

在 api 上执行 HEAD 返回以下内容;

GET, OPTIONS
Connection → keep-alive
Content-Type → application/json
Date → Wed, 17 Jun 2015 10:11:07 GMT
Server → gunicorn/19.2.1
Transfer-Encoding → chunked
Vary → Accept, Cookie
Via → 1.1 vegur
X-Frame-Options → SAMEORIGIN

如何更改此 API 的内容类型以接受图像请求?

我已经尝试添加一个具有正确 media_type 的自定义解析器,但他似乎没有帮助。这是正确的方法还是有更简单的方法来提供来自 django-rest-framework 的图像?

最佳答案

您需要创建自定义 renderer喜欢:

class JPEGRenderer(renderers.BaseRenderer):
media_type = 'image/jpeg'
format = 'jpg'
charset = None
render_style = 'binary'

def render(self, data, media_type=None, renderer_context=None):
return data

关于django - 使用 django-rest-framework 提供图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30889003/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com