0

I am using Django REST framework

It returns Content-Type: application/json in header.

Normally it works, but some browser needs the precise header such as

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

How can I do this ??

I just return the Response here where should I set the header??

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) 
whitebear
  • 11,200
  • 24
  • 114
  • 237

1 Answers1

0

Django REST Framework Response() you can pass headers as argument

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)

If still facing some error I'll suggest you to read this post

Ankit Tiwari
  • 4,438
  • 4
  • 14
  • 41