A Standards Based Technique for Batching Ajax Requests

I recently wrote an article for Comet Daily that was a proposal for a standards based approach to comet communication. One of the key components of the proposal that made it go, was the mechanism for using standards to coherently subscribe and respond to multiple resources. By applying the multipart/digest content type to HTTP messages, multiple HTTP messages can be wrapped up in single message using a standard MIME type. In the MIME type specification, the multipart/digest is defined in the context of email messages as being a container for multiple email messages. However, it does not take too much imagination to infer that when this content type is used in the context of a HTTP messages, that the content would be a multipart message composed of multiple HTTP messages.

While there are certainly client/server frameworks out there that support Ajax batching (such as DWR), they alll do so with their own internal protocol. Using the multipart/digest content type opens the door for batched Ajax requests with an open protocol that would allow client libraries to send batched requests to various server side components. I will try to create a client library that will modify the XmlHttpRequest object to support batched requests using this technique.

What to do with this blog?

I have been pondering what to do with this blog? Most of my writing is done on technology, and I usually put articles on a various sites like www.cometdaily.com and www.json.com. However, there are some writings that simply don’t fit into the categories of Comet and JSON. Originally, I was intending to reserve this blog for family and spirituality content, but I think for now at least, I think I will use this as a place to talk about technology as well. I guess I tend to think of life as more of integrated continuum of spirituality, family, work, and play and not segregated areas. If you don’t like that let me know, and maybe I will reconsider.

Follow

Get every new post delivered to your Inbox.