CSSHttpRequestはJavaScriptを使ったオープンソース・ソフトウェア。AjaxはWebシステムを進化させた凄い技術ではあるが、制約も色々とある。特に大きいのがクロスドメインによるデータの授受ができないという問題だろう。その問題を解決するため、JSONPをはじめとする様々な対抗技術が生み出されている。

ピクチャ 4.png

デモ。文字表示やFlickr検索など

 

GETリクエストの限定されるが、CSSを使ってAjaxと同じような動作を実現するというのがCSSHttpRequestだ。これは新しい視点で、なかなか面白い。CSS側の書き方も特徴的になるが、これはPHPをはじめとするサーバ出力によって自動生成すれば良い。

Ajaxで受け渡すデータを#c0、#c1といったIDを定義して、そのbackgoundプロパティでdata URIスキーマを使って受け渡す。data URI自体は柔軟なので、バイナリに限らずテキストを渡すこともできる。結果はCSSHttpRequestを使う時に呼び出すコールバック関数に渡される。

ピクチャ 5.png

文字を表示するCSS

 

データ受け渡し用のエンコードにPHP/Ruby/Pythonのコードが付属している。動作はIE6以上、Firefox2以上、Safari3以上そしてiPhoneとなっている。JSONPでも同様のことができるとあって、CSSHttpRequestを使うという場面は少ないかもしれない。だが技術的には興味深く、面白いソフトウェアだ。

 

via Cross Domain Ajax using CSSHttpRequest | Web Resources [WebAppers]

CSSHttpRequest - Hacks - nb.io

 http://nb.io/hacks/csshttprequest