【问题标题】:Stop Django from rendering JSON response阻止 Django 呈现 JSON 响应
【发布时间】:2021-05-11 01:53:15
【问题描述】:

我将 Django 与 rest_framework 一起使用,在我看来,我正在使用 rest_framework.viewsets, 我停止使用 rest_framework 来展示它的精美界面:

REST_FRAMEWORK = {
    'DEFAULT_RENDERER_CLASSES': ('rest_framework.renderers.JSONRenderer'),
}

但现在 Django 正在渲染 JSON 响应

我希望它始终返回原始数据

我该怎么做?

【问题讨论】:

标签: json django


【解决方案1】:

你可以尝试写你的custom renderer

例子:

from django.utils.encoding import smart_text
from rest_framework import renderers


class PlainTextRenderer(renderers.BaseRenderer):
    media_type = 'text/plain'
    format = 'txt'

    def render(self, data, media_type=None, renderer_context=None):
        return smart_text(data, encoding=self.charset)

带有自定义渲染器的默认字符集是UTF-8。如果您想更改,可以在此处阅读更多信息https://www.django-rest-framework.org/api-guide/renderers/

【讨论】:

  • 谢谢我的朋友??。原来是 Firefox,而不是 Django。但它也是一个很好的解决方案,尽管返回的数据是 OrderedDict。
猜你喜欢
  • 1970-01-01
  • 2014-09-06
  • 1970-01-01
  • 1970-01-01
  • 2016-10-14
  • 1970-01-01
  • 1970-01-01
  • 2020-10-02
  • 2015-09-06
相关资源
最近更新 更多