mirror of
https://github.com/ansible/awx.git
synced 2026-03-10 22:19:28 -02:30
Always use JSON renderer for OPTIONS requests in browsable API, override default renderer.
This commit is contained in:
@@ -9,6 +9,13 @@ class BrowsableAPIRenderer(renderers.BrowsableAPIRenderer):
|
|||||||
Customizations to the default browsable API renderer.
|
Customizations to the default browsable API renderer.
|
||||||
'''
|
'''
|
||||||
|
|
||||||
|
def get_default_renderer(self, view):
|
||||||
|
renderer = super(BrowsableAPIRenderer, self).get_default_renderer(view)
|
||||||
|
# Always use JSON renderer for browsable OPTIONS response.
|
||||||
|
if view.request.method == 'OPTIONS' and not isinstance(renderer, renderers.JSONRenderer):
|
||||||
|
return renderers.JSONRenderer()
|
||||||
|
return renderer
|
||||||
|
|
||||||
def get_rendered_html_form(self, view, method, request):
|
def get_rendered_html_form(self, view, method, request):
|
||||||
'''Never show auto-generated form (only raw form).'''
|
'''Never show auto-generated form (only raw form).'''
|
||||||
obj = getattr(view, 'object', None)
|
obj = getattr(view, 'object', None)
|
||||||
|
|||||||
@@ -457,10 +457,10 @@ class UnifiedJobStdoutSerializer(UnifiedJobSerializer):
|
|||||||
fields = ('result_stdout',)
|
fields = ('result_stdout',)
|
||||||
|
|
||||||
def get_types(self):
|
def get_types(self):
|
||||||
if type(self) is UnifiedJobSerializer:
|
if type(self) is UnifiedJobStdoutSerializer:
|
||||||
return ['project_update', 'inventory_update', 'job']
|
return ['project_update', 'inventory_update', 'job']
|
||||||
else:
|
else:
|
||||||
return super(UnifiedJobSerializer, self).get_types()
|
return super(UnifiedJobStdoutSerializer, self).get_types()
|
||||||
|
|
||||||
def to_native(self, obj):
|
def to_native(self, obj):
|
||||||
ret = super(UnifiedJobStdoutSerializer, self).to_native(obj)
|
ret = super(UnifiedJobStdoutSerializer, self).to_native(obj)
|
||||||
|
|||||||
@@ -1417,7 +1417,8 @@ class UnifiedJobStdout(RetrieveAPIView):
|
|||||||
|
|
||||||
serializer_class = UnifiedJobStdoutSerializer
|
serializer_class = UnifiedJobStdoutSerializer
|
||||||
renderer_classes = [BrowsableAPIRenderer, renderers.StaticHTMLRenderer,
|
renderer_classes = [BrowsableAPIRenderer, renderers.StaticHTMLRenderer,
|
||||||
PlainTextRenderer, AnsiTextRenderer]
|
PlainTextRenderer, AnsiTextRenderer,
|
||||||
|
renderers.JSONRenderer]
|
||||||
filter_backends = ()
|
filter_backends = ()
|
||||||
new_in_148 = True
|
new_in_148 = True
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user