REST stands for Representational state transfer - it's based on resources with unique URL:s in combination with different methods for altering these - like GET, POST, PUT and DELETE.

Your example URL from your module looks like:

"http://www.example.com/services/rest?method=node.load&nid=1&fields=title..."

The URL for that call is http://www.example.com/services/rest and seems to be the same no matter what action is made through the web service.

A RESTful URL for that call would be something like "http://www.example.com/services/rest/node/1", perhaps with the addition of "?fields=title,body" if only those fields was to be fetched..

What your modules seems to do is to call a method with a bunch of attributes in a query attached to one single URL. As far as I can see that's not a RESTful server but instead just another variant on a RPC server that instead of encoding it's attributes in XML, like XML-RPC do, urlencodes them.

The fact that you add query properties to the URL does not make the call RESTful and neither does fact that you can use the GET-method for the call.

Since this module isn't providing a REST server but a RPC server I think it should change it's name as to not mislead people who are looking for a REST server. I've no opinion on what the new name should be though.

Some references on what REST is and what RPC is:

http://en.wikipedia.org/wiki/Representational_State_Transfer
http://en.wikipedia.org/wiki/Remote_procedure_call

Comments

Hugo Wetterberg’s picture

Assigned: Unassigned » Hugo Wetterberg
Status: Active » Fixed

This will be resolved by 6.x-2.x

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.