Skip to main content

JSONP support for Django REST Framework

Project description

build-status-image pypi-version

JSONP support for Django REST Framework

Full documentation for the project is available at http://jpadilla.github.io/django-rest-framework-jsonp.

Overview

JSONP support extracted as a third party package directly from the official Django REST Framework implementation.


Warning: If you require cross-domain AJAX requests, you should almost certainly be using the more modern approach of CORS as an alternative to JSONP. See the CORS documentation for more details.

The jsonp approach is essentially a browser hack, and is only appropriate for globally readable API endpoints, where GET requests are unauthenticated and do not require any user permissions.


Requirements

  • Python (2.7, 3.3, 3.4)

  • Django (1.6, 1.7)

  • Django REST Framework (2.4.3, 2.4.4, 3.0-beta)

Installation

Install using pip

$ pip install djangorestframework-jsonp

Example

REST_FRAMEWORK = {
    'DEFAULT_RENDERER_CLASSES': (
        'rest_framework_jsonp.renderers.JSONPRenderer',
    ),
}

You can also set the renderer used for an individual view, or viewset, using the APIView class based views.

from rest_framework.response import Response
from rest_framework.views import APIView
from rest_framework_jsonp.renderers import JSONPRenderer

class ExampleView(APIView):
    """
    A view that returns the count of active users in JSONP
    """
    renderer_classes = (JSONPRenderer,)

    def post(self, request, format=None):
        user_count = User.objects.filter(active=True).count()
        content = {'user_count': user_count}
        return Response(content)

Documentation & Support

Full documentation for the project is available at http://jpadilla.github.io/django-rest-framework-jsonp.

You may also want to follow the author on Twitter.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

djangorestframework-jsonp-1.0.0.tar.gz (2.6 kB view hashes)

Uploaded Source

Built Distribution

djangorestframework_jsonp-1.0.0-py2.py3-none-any.whl (3.4 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page