, API RESTful. API REST URI , (tell ). , . , API REST HTTP, HTTP- GET, POST, PUT, DELETE ..
, tell, : dog. , , . , :
GET mysite.com/dogs?q=Rover
, URL- , Rover the dog: mysite.com/dogs/3759
Rover the dog:
GET mysite.com/dogs/3739
, , (.. Rover the dog). , , (.. , Rover).
, - Rover, - . , Rover (, Rovers , , Rover , - !). sit Rover:
POST mysite.com/dogs/3739
<command name="sit"/>
- "" () (), (Rover), ( ). POST
Status : 201 (Created)
Location: mysite.com/dogs/3739/commands/1299
, Rover, ( ). , , URL-, Location. :
GET mysite.com/dogs/3739/commands/1299
. , : (, , , followed=true). , Rover (, ).
, , Rover:
GET mysite.com/dogs/3739
, , , "". , Rover URI:
mysite.com/dogs/3739/commands/
IMO RESTful. , , , . "command" RPC, "" , . "" - , . "" "", , , , , .
, (tl; dr):
- URI ,
- / ( ), ( " " )
- , , , ( ).
RESTful:
http://www.infoq.com/articles/webber-rest-workflow
- "REST in Practice".
, , Fielding ( 5.2 , ):
http://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm
( !), , .