Friday, June 02, 2006

Google AJAX Search and JSON Web Sevice Calling

In this blog I've mentioned about remoting technology using JSON in dynamic script loading (JSONP). It's great because it doesn't require any app server for mashuping services, and scales well.

Among major service providers, first, del.icio.us noticed that and widely introduced for the developers, and then Yahoo implemented same feature but even more sophisticated one. Amazon's xslt feature enables same service. However, the giant google didn't have any service interface for browser applications (except Google Maps) so far.

But finally they introduced 'Google AJAX Search'.

This enables you to embed Ajax-style search box in your site. No proxy server is needed. Static html would be enough to host the service.

I've checked how the Ajax search is working, and found that they are also using JSON with padding technique. Here is a url that is used in background communication (be sure that it is not XMLHttpRequest call!) :

http://www.google.com/uds/GwebSearch?callback=GwebSearch.RawCompletion&lstkp=0&context=0&rsz=small&hl=ja&q=Google&key=internal-documentation&v=0.1


This is a good news for me because I can add this google service to my JSON with padding test page. I'm offering Yahoo, Amazon, del.icio.us, and generic rss2json service test. But while implementing Google's JSONP test, I found that the response interface is a little different from others. So I've slightly modified JSONP stub javascript class with caution, not to affect other services.

This is my JSON with padding test page.
http://www.geocities.jp/stormriders999/jsontest.html



Technorati tags: , , ,

Monday, May 22, 2006

dojo 0.3.0 supports JSONP

Dojo 0.3.0 has released a few days ago (? actually I'm not sure exactly when), and it is said that the release supports JSONP callback style in ScriptSrcIO.

http://archive.dojotoolkit.org/nightly/tests/io/test_ScriptSrcIO.html


So, if you are dojo toolkit user, your AJAX applications can easily connect to the several data sources in the internet - like Yahoo, del.icio.us, Amazon, and Google (Reader) - without consuming your server resources. Yes, it is completely cross-domain AJAX.

Technorati tags: , , ,

Monday, May 01, 2006

Del.icio.us brows.er

I've created another tool : del.icio.us brows.er .

Interface looks like del.icio.us direc.tor, but brows.er has so much difference from direc.tor.

  • No bookmarklet. Just access to the page linked above.

  • No server hosting environement. You can run even in your local PC. Please check it by saving the site as a html doc.

  • No api authentication. All data is gotten via JSON public feeds.

  • Not restricted to your posts. All del.icio.us users' posts are browsable.



Technorati tags: , ,

Friday, April 14, 2006

JSON Feeds of Google Reader

You may know "Google Reader" - kind of online RSS reader - are providing publishing feature for your labeled and publicly opened feeds. You can copy the code and paste it to your blog.

For example, this is my feeds about web 2.0.




If you can check the source HTML code of this page, you might notice that this is some kind of JSON with padding (JSONP) call. Actually, you can check what feed data is sent from Google via following URLs :

http://www.google.com/reader/public/javascript/user/03853986730064725171/label/web2.0?n=5

http://www.google.com/reader/public/javascript/user/03853986730064725171/label/web2.0?n=5&callback=hello

The most intuitive way to see the JSONP services, I think, is to use my JSON with Padding Tester. Arbitrary JSONP services (including Yahoo, del.icio.us, or Amazon with xslt) can be visualized using this tester. Of course it is useful for this Google's JSON service.


Technorati tags: , , , ,

Wednesday, March 01, 2006

Name Changed : My Del.icio.us Recommendation Snippet

Recently I noticed that original del.icio.us is providing "Del.icio.us Recommendation Engine", so I changed the name of this module to "My Del.icio.us Recommendation Snippet".

This confliction is because I named it so easy way, but anyway these two are totally different. The former (original) is an internal functionality in del.icio.us service itself, and the latter (I created) is a script snippet using del.icio.us JSON call interface, which can be embedded in arbitrary web site.