DESCRIPTION
This builds on Jifty::Manual::Tutorial, so make sure you have a running jifty that roughly resembles the step-by-step from there.SETUP
You must add this to your site_config.yml
framework: Plugins: - REST: {}
See Jifty::Plugin::REST.
The commands assume that you have LWP installed with the GET alias. If not, you'll need to use the longhand lwp-request -m GET, or curl, or your browser.
help
Make sure it is working:
$ GET http://localhost:8888/=/help Accessing resources: ...
You should see some text describing the services, not html (that's longhand for 404.) Check the config and restart the server.
GET
Just list the models.
$ GET http://localhost:8888/=/model.yml --- - MyWeblog.Model.Post
List the Post schema.
$ GET http://localhost:8888/=/model/Post.yml --- body: label: Content name: body readable: 1 sort_order: 1 type: text writable: 1 id: mandatory: 1 name: id readable: 1 type: serial writable: 0 title: default: Untitled post label: Title name: title readable: 1 sort_order: 0 type: text writable: 1
You did make some posts, right?
$ GET http://localhost:8888/=/model/Post/id.yml --- - 1 - 2
Dump the data:
$ GET http://localhost:8888/=/model/Post/id/1.yml --- body: 'This is my post, the content of which is this, which is mine.' id: 1 title: my first post $ GET http://localhost:8888/=/model/Post/id/2.yml --- body: "Content of another post. Got to go, the cat's on fire." id: 2 title: post deux
POST
TODO not workingActually, it looks like it is not supposed to work this way. Why not?
$ echo '--- body: "A post via web services" id: 3 title: "posting from the command-line" ' | lwp-request -m POST http://localhost:8888/=/model/Post.yml POST http://localhost:8888/=/model/Post/id/3.yml --> 404 Not Found
PUT
TODO not working
$ echo '--- title: "posting from the cli" ' | lwp-request -m PUT http://localhost:8888/=/model/Post/3.yml 500 Can't read entity body: Connection reset by peer
DELETE
$ lwp-request -m DELETE http://localhost:8888/=/model/Post/id/3.yml --- content: {} error: ~ field_errors: {} field_warnings: {} message: Deleted success: 1