diff --git a/rest_framework/renderers.py b/rest_framework/renderers.py index 3298294ce2..baf861a7ed 100644 --- a/rest_framework/renderers.py +++ b/rest_framework/renderers.py @@ -852,7 +852,7 @@ class SchemaJSRenderer(BaseRenderer): def render(self, data, accepted_media_type=None, renderer_context=None): codec = coreapi.codecs.CoreJSONCodec() - schema = base64.b64encode(codec.encode(data)) + schema = base64.b64encode(codec.encode(data)).decode('ascii') template = loader.get_template(self.template) context = {'schema': mark_safe(schema)} diff --git a/tests/test_renderers.py b/tests/test_renderers.py index 54b3ce9645..ba8400c065 100644 --- a/tests/test_renderers.py +++ b/tests/test_renderers.py @@ -18,7 +18,7 @@ from rest_framework import permissions, serializers, status from rest_framework.renderers import ( AdminRenderer, BaseRenderer, BrowsableAPIRenderer, DocumentationRenderer, - HTMLFormRenderer, JSONRenderer, StaticHTMLRenderer + HTMLFormRenderer, JSONRenderer, SchemaJSRenderer, StaticHTMLRenderer ) from rest_framework.request import Request from rest_framework.response import Response @@ -736,3 +736,20 @@ def test_document_with_link_named_data(self): html = renderer.render(document, accepted_media_type="text/html", renderer_context={"request": request}) assert '
Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.
Alternative Proxies: