Note:

This site is no longer used and is in read-only mode. Instead please go to our new Moodle Developer Resource site.

Web services: Difference between revisions

From MoodleDocs
No edit summary
m Protected "Web services": Developer Docs Migration ([Edit=Allow only administrators] (indefinite))
 
(109 intermediate revisions by 14 users not shown)
Line 1: Line 1:
{{Template:Work in progress}}{{Moodle_2.0}}
{{Template:Migrated|newDocId=/docs/apis/subsystems/external/}}
 
=Introduction=
This page described the Web Services module implemented for Moodle 2.0<br>
The tracker issue is here: MDL-12886<br>
This module is been implemented by the [http://blogs.dfwikilabs.org/moodle_ws/ DFWS Team] and Moodle.
 
=Implementation=
Web Services module has been conceived in a purpose to be ported on different Moodle version, and also on different project. It has also for purpose to support multiple web service protocols (REST, SOAP, AMF, ...). Adding a new protocol support should be relatively easy.
 
== How does it work ==
#The client requests a token from the web services server. For that the client sends a username/password.
#The web service server generates a token for this username and send it back to the client
#The client calls a web service (module name, function name, and function parameters) and joins the token to it
#The web service server authenticate the token, then call the matching web service function. The web service function is located in a external.php file. This external.php file contains all web service functions of for a module. The external.php file is located into the module folder.
#The web service function check capability, and call Moodle core function.
#The core function can return a result to the web service function. The web service can also return the result to the server. The server return the result to the client
 
 
=List of functions=
All callable functions are declared into each external.php. A "description" array contains all function names, parameter names and types, and return type.

Latest revision as of 06:13, 22 December 2022

Important:

This content of this page has been updated and migrated to the new Moodle Developer Resources. The information contained on the page should no longer be seen up-to-date.

Why not view this page on the new site and help us to migrate more content to the new site!