Announcing jsonserver1.0 beta3 and 1.1alpha

jsonserver provides some JSON-RPC ( support for zope3.
jsonserver-1.0beta3 is available at

or at svn repository

The major change for beta3 is improved safety for the JSON parser. It now pre-parses and inspects the incoming JSON to make rogue client exploits less likely. They were not likely before, but now it's more belt-and-suspenders. Unlike beta2, beta3 works with python-2.3.

jsonserver trunk (1.1alpha) is keeping up with zope3 trunk. It now does the wsgi thing, too, which I presume to be zope3's behavior for 3.2+. IMPORTANT: jsonserver trunk is now likely incompatible with zope3 3.1 or lower.
jsonserver trunk is available at svn repository

Why use JSON-RPC when there is a perfectly good XML-RPC? Client support. jsonserver with jsolait works with most gecko browsers (Firefox, Mozilla, Netscape 6.1+, etc.), khtml browsers (Safari 1.2+ and konqueror 3.4+), recent IEs, and Opera 8.1. And I understand it is very easy to write your own client in javascript, should you choose not to use jsolait. JSON-RPC also has a "notify" concept, where the client may send a message to the server and not expect a return response. This is handy for methods that do things but do not return things.

Why does jsonserver replace the zope3 HTTP server? Client support. We need to sniff at the incoming data stream in case the client is Opera and the content-type is not set the way we want. Actually, jsonserver uses much the same code as zope3 trunk, and at the moment I don't think there is any other way to add another RPC listener. There should not be any noticeable difference other than adding support for JSON-RPC.

So this is an AJAX technology? Well, it's more AJAJ, JSON instead of XML for the last letter of the acronym. Web browser clients use XMLHTTPRequest to send and receive data without a complete page refresh. You may transport HTML or XML snippets as javascript strings, so there is little difference technically.

-Jim Washington
Zope3-users mailing list

Reply via email to