/ / Ako nastaviť hlavičku typu obsahu pre kód odpovede 304 http? - python, django

Ako nastaviť hlavičku Content-Type pre kód odpovede HTTP 304? - python, django

Preto používam niekoľko dekorátorov z Djanga, aby som v API mohol ukladať do vyrovnávacej pamäte:

@require_GET
@cache_page(100)
@cache_control(max_age=100, s_maxage=100)
@csrf_exempt
def my_api(request):

Problém je, 304 nemodifikovaná odpoveď jevracia sa so záhlavím textového / html typu obsahu. Moje API obvykle vracia hlavičku Content / Type aplikácie / json a ja by som chcel byť konzistentný. Existuje spôsob, ako povedať Djangu, aký typ obsahu sa má vrátiť s 304 kódom odpovede?

odpovede:

0 pre odpoveď č. 1

Problém je tu https://github.com/django/django/blob/master/django/http/response.py#L411

Napíšte dekorátora, ktorý znova pridá mimetyp

def RestoreMime(fn):
def Wrapper(*args, **kwds):
response = fn(*args, **kwds)
response["Content-type"] = your_mime_type
return response
return Wrapper