Skip to content

XML-RPC Server App for the Django framework

License

Notifications You must be signed in to change notification settings

davidmgvaz/django-xmlrpc

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

76 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Django XML-RPC

Django_xmlrpc offers a means by which a Django developer can expose their views (or indeed any other function) using XML-RPC.

This is a fork of the original version made by Svetlyak40wt compatible with Django >= 1.8 and Python >= 2.5.

If you want to use django_xmlrpc for an older version of Django or Python, please use an old release.

Contents

You could retrieve the last sources from http://github.com/Fantomas42/django-xmlrpc and run the installation script

$ python setup.py install

or use pip

$ pip install -e git://github.com/Fantomas42/django-xmlrpc.git#egg=django-xmlrpc

Register django_xmlrpc in your INSTALLED_APPS section of your project' settings.

There are two ways to register methods that you want to handle:

In your project's settings.

XMLRPC_METHODS = (('path.to.your.method', 'Method name'),
                  ('path.to.your.othermethod', 'Other Method name'),)

In a file called xmlrpc.py in your application directory.

XMLRPC_METHODS = (('path.to.your.method', 'Method name'),
                  ('path.to.your.othermethod', 'Other Method name'),)

A registered method should look like this:

from django_xmlrpc.decorators import xmlrpc_func

@xmlrpc_func(returns='string', args=['string'])
def test_xmlrpc(text):
    """Simply returns the args passed to it as a string"""
    return "Here's a response! %s" % str(text)

Finally we need to register the url of the XML-RPC server. Insert something like this in your project's urls.py:

from django_xmlrpc.views import handle_xmlrpc

url(r'^xmlrpc/$', handle_xmlrpc, name='xmlrpc'),

About

XML-RPC Server App for the Django framework

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 97.5%
  • HTML 2.5%