Difference between revisions of "rest/json"

From Microformats Wiki
Jump to navigation Jump to search
(→‎Implementations: http://sitepen.com/labs/persevere.php)
(CouchDB)
Line 2: Line 2:
  
 
== Charter ==
 
== Charter ==
 
''[Initial Draft by [[User:DrErnie|Dr. Ernie]] 12:55, 2 Sep 2008 (PDT)]''
 
  
 
Given that:
 
Given that:
Line 34: Line 32:
  
 
== Implementations ==
 
== Implementations ==
* [http://giantrobots.thoughtbot.com/2007/4/2/jester-javascriptian-rest Jester]
+
* [http://incubator.apache.org/couchdb/docs/intro.html CouchDB]
 +
* [http://giantrobots.thoughtbot.com/2007/4/2/jester-javascriptian-rest Jester] (same URLs as ActiveResource)
 
* [http://www.sitepen.com/blog/2008/06/13/restful-json-dojo-data/ Dojo REST store]
 
* [http://www.sitepen.com/blog/2008/06/13/restful-json-dojo-data/ Dojo REST store]
 
* [http://code.google.com/p/dom-resource/ DOM Resource]
 
* [http://code.google.com/p/dom-resource/ DOM Resource]
 
* [http://sitepen.com/labs/persevere.php Persevere]
 
* [http://sitepen.com/labs/persevere.php Persevere]
 
* [http://github.com/sproutit/sproutcore/wikis/sproutcore-rest-api-the-definitive-guide SproutCore]
 
* [http://github.com/sproutit/sproutcore/wikis/sproutcore-rest-api-the-definitive-guide SproutCore]

Revision as of 16:13, 4 September 2008

RESTful JSON

Charter

Given that:

  • REST is a powerful architecture for scalable web services
  • JSON is a lightweight container for exchanging data
  • AtomPub, while RESTful, requires XML documents with strict metadata requirements

The goal of the RESTful JSON project is to develop a series of conventions for:

  • URLs
  • HTTP methods
  • HTTP headers
  • JSON fields

that:

  1. is maximally compatible with existing (RESTful, generic) clients
  2. enables partial updates
  3. allows paging and/or partial returns of large datasets
  4. standardizes linking to related resources
  5. use of hypermedia (links + context) to manage application state
  6. does NOT become a full-fledged RPC solution

Resources

Proposals

Implementations