Working AtomAPI Implemenation

Joe Gregorio

A real live working implementation of the AtomAPI has been posted. Mark has all the details.

This is an implementation in two parts. The first is a server-side CGI script that Mark wrote in Python that hooks into a Movable Type installation. Yes, it's true, this is an AtomAPI implementation for Movable Type.

The second part of the implementation is a client side GUI written in Python that allows you to create, modify and delete entries. If you download the client implementation and run it, it will automatically connect to Marks implementation and let you add, remove and modify entries.

Things to note:

  1. This implementation does no optimizing, that is neither ETags nor gzip are used on GETs to speed up those actions. Implementing both ETags and gzip would speed up the interface considerably.
  2. This uses a slightly modified implementation of HTTP Digest Authentication. Note that in the config.xml file included with the GUI the plain text password is not included, only a hash value that includes the password, username and realm is stored.
  3. The GUI has only been tested under Windows and I am curious how it looks/operates on other platforms.

As always, you can give feedback on RestEchoApiDiscuss, or atom-syntax.

I'm surprised to see PUT without a Content-Range being used to do partial updates.

Question: how would I use this interface to correct the spelling of one contributor's name?

Posted by Sam Ruby on 2003-08-18

Good point Sam, I'll talk to Mark about updating it so that all the elements of Entry are passed along on a PUT, which btw is what the client does now, it is just a matter of making the server a little more strict.

Posted by Joe on 2003-08-18

Ah, my bad.  That should definitely be clarified in the spec.  I'll update my code tonight.

Posted by Mark on 2003-08-18

comments powered by Disqus