Provided by: libjifty-perl_1.10518+dfsg-3ubuntu1_all bug


       Jifty::Manual::TutorialRest - Web Services


       This builds on Jifty::Manual::Tutorial, so make sure you have a running jifty that roughly
       resembles the step-by-step from there.


       You must add this to your site_config.yml

             - 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.


       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.


       Just list the models.

         $ GET http://localhost:8888/=/model.yml
         - MyWeblog.Model.Post

       List the Post schema.

         $ GET http://localhost:8888/=/model/Post.yml
           label: Content
           name: body
           readable: 1
           sort_order: 1
           type: text
           writable: 1
           mandatory: 1
           name: id
           readable: 1
           type: serial
           writable: 0
           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


       TODO not working

       Actually, 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


       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


         $  lwp-request -m DELETE http://localhost:8888/=/model/Post/id/3.yml
         content: {}
         error: ~
         field_errors: {}
         field_warnings: {}
         message: Deleted
         success: 1