[Imported from Trac: page Extensions, version 2]
parent
e0ffd148cf
commit
da11fceff7
|
@ -1,2 +1,26 @@
|
||||||
|
|
||||||
``FIXME:'' Put stuff here.
|
# Extension Development
|
||||||
|
|
||||||
|
Tahoe has a programmatic API which enables building custom applications on top of the storage infrastructure. This ``RESTful'' interface uses HTTP, so extensions can be implemented as separate processes across a network.
|
||||||
|
|
||||||
|
* The [/trac/tahoe/browser/docs/webapi.txt webapi.txt] document shows how to control a Tahoe node programmatically.
|
||||||
|
|
||||||
|
## Known Extensions
|
||||||
|
|
||||||
|
None known yet...
|
||||||
|
|
||||||
|
## Extension Implementation Issues
|
||||||
|
|
||||||
|
### HTTP methods
|
||||||
|
|
||||||
|
The api relies on four HTTP methods defined as per the standard `GET, POST, PUT, and DELETE`, which map intuitively to storage operations.
|
||||||
|
|
||||||
|
Although these are standard HTTP methods, some clients do not offer good support for them.
|
||||||
|
* The following clients are known to support all methods:
|
||||||
|
* [curl](http://curl.haxx.se/) is an open source client which supports arbitrary methods with the '-X' option.
|
||||||
|
* The following clients do not seem to support either `PUT` and `DELETE`:
|
||||||
|
* Python 2.5's urllib module. (Not verified.)
|
||||||
|
* We have not yet determined if the following have support for arbitrary methods:
|
||||||
|
* Common web browsers.
|
||||||
|
* Python 2.5's httplib.
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue