Quick-start guide¶
Configuring django-modern-rpc is quick and simple. Follow that steps to be up and running in few minutes!
Installation and configuration¶
Use your preferred tool (pip, pipenv, pipsi, easy_install, requirements.txt file, etc.) to install package
django-modern-rpc
in your environment:
pip install django-modern-rpc
Add modernrpc
app to your Django applications, in settings.INSTALLED_APPS
:
# in project's settings.py
INSTALLED_APPS = [
...
'modernrpc',
]
Declare a RPC Entry Point in URLConf¶
The entry point is a standard Django view class which mainly handle RPC calls. Like other Django views, you have
to use django.conf.urls.url()
to map URL pattern with this class. This can be done in your project’s URLConf,
or in any app specific one.
# In myproject/my_app/urls.py
from django.conf.urls import url
from modernrpc.views import RPCEntryPoint
urlpatterns = [
# ... other url patterns
url(r'^rpc/', RPCEntryPoint.as_view()),
]
Entry points behavior can be customized to your needs. Read Entry point configuration for full documentation.
Write and register your remote procedures¶
Now, you have to write your remote procedures. These are global functions decorated with @rpc_method
.
# In myproject/rpc_app/rpc_methods.py
from modernrpc.core import rpc_method
@rpc_method
def add(a, b):
return a + b
@rpc_method
behavior can be customized to your needs. Read Configure the registration
for full list of options.
Declare your RPC methods modules¶
Django-modern-rpc will automatically register functions decorated with @rpc_method
, but needs a hint to locate them.
Declare settings.MODERNRPC_METHODS_MODULES
to indicate all python modules where remote procedures are defined.
MODERNRPC_METHODS_MODULES = [
'rpc_app.rpc_methods'
]
That’s all !¶
Your application is ready to receive XML-RPC or JSON-RPC calls. The entry point URL is http://yourwebsite.com/rpc/
but you can customize it to fit your needs.