Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

RPC4Django is an XMLRPC and JSONRPC server for Django powered projects. Simply plug it into any existing Django project and you can make your methods available via XMLRPC and JSONRPC.

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 docs
Octocat-spinner-32 example
Octocat-spinner-32 rpc4django
Octocat-spinner-32 tests
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .travis.yml
Octocat-spinner-32 LICENSE.rst
Octocat-spinner-32 MANIFEST.in
Octocat-spinner-32 README.rst
Octocat-spinner-32 setup.py
README.rst

RPC4Django

https://secure.travis-ci.org/davidfischer/rpc4django.png

Prerequisites

Installation

pip install rpc4django[reST]

Configuration

  1. First, you need to add new url pattern to your root urls.py file. You can replace r'^RPC2$' with anything you like.

    # urls.py
    
    urlpatterns = patterns('',
        # rpc4django will need to be in your Python path
        (r'^RPC2$', 'rpc4django.views.serve_rpc_request'),
    )
    
  2. Second, add RPC4Django to the list of installed applications in your settings.py.

    # settings.py
    
    INSTALLED_APPS = (
        'rpc4django',
    )
    
  3. Lastly, you need to let RPC4Django know which methods to make available. RPC4Django recursively imports all the apps in INSTALLED_APPS and makes any methods importable via __init__.py with the @rpcmethod decorator available as RPC methods. You can always write your RPC methods in another module and simply import it in __init__.py.

    # testapp/__init__.py
    
    from rpc4django import rpcmethod
    
    # The doc string supports reST if docutils is installed
    @rpcmethod(name='mynamespace.add', signature=['int', 'int', 'int'])
    def add(a, b):
        '''Adds two numbers together
        >>> add(1, 2)
        3
        '''
    
        return a+b
    
  4. For additional information, read the docs

Something went wrong with that request. Please try again.