2015-06-17 41 views
5

有什麼辦法讓Django應用接受自定義接受標頭,如「application/vdn.name.v1 + json」?Django不解析自定義http接受標頭

我不斷收到這樣的

Could not satisfy the request Accept header. 

響應我使用Django的REST框架以及

回答

1

嘗試定義custom renderer和設置media_type屬性。

from rest_framework.renderers import JSONRenderer 

class MyRenderer(JSONRenderer): 
    media_type = 'application/vdn.name.v1+json' 

然後啓用渲染器(見the docs獲取更多信息)

REST_FRAMEWORK = { 
    'DEFAULT_RENDERER_CLASSES': (
     'path.to.MyRenderer', 
     'rest_framework.renderers.JSONRenderer', 
     'rest_framework.renderers.BrowsableAPIRenderer', 
    ) 
} 
+1

是否有任何方式來定義多個媒體類型等媒體類型= [ '應用/ vdn.name.v1 + JSON', '應用程序/ vdn.name.v2 + JSON']? – masanorinyo