Добавление заголовка encode для фреймворка REST

Я использую Django REST framework

В заголовке возвращается Content-Type: application/json.

Обычно это работает, но некоторым браузерам требуется точный заголовок, например

Content-Type: application/json; charset=utf-8

Как я могу это сделать?

Я просто возвращаю Response здесь где я должен установить заголовок?

class SmartTagViewSet(viewsets.ModelViewSet):
    queryset = Mood.objects.all()
    serializer_class = SmartTagSerializer
    def list(self,request,*args,**kwargs):

        objs = SmartTag.objects.all()
        custom_data = {
            'items': SmartTagSerializer(objs, many=True).data
        }
        custom_data.update({
            'meta':{"api":"SmartTag"}
        })
        return Response(custom_data) 

Django REST Framework Response() вы можете передавать заголовки в качестве аргумента

class SmartTagViewSet(viewsets.ModelViewSet):
    queryset = Mood.objects.all()
    serializer_class = SmartTagSerializer
    def list(self,request,*args,**kwargs):

        objs = SmartTag.objects.all()
        custom_data = {
            'items': SmartTagSerializer(objs, many=True).data
        }
        custom_data.update({
            'meta':{"api":"SmartTag"}
        })
        header = {
            'Content-Type': 'application/json; charset=utf-8'
        }
        return Response(custom_data, headers=header)

Если вы все еще сталкиваетесь с ошибками, я советую вам прочитать этот пост

Вернуться на верх