JSONをJSONPに変換するJSONP Proxy
最近、JSONでデータ出力してくれるサービスが増えた。構造をさくっと取得出来て便利だ。だが、あと一歩、JSONPに対応してくれれば、クライアントサイドから直接クロスドメインでデータ取得して遊べるのに!
というわけで、JSONをJSONPに変換するプロキシを作った。
これは、プロキシに対してcallback名とrequest_uriを投げると、request_uriを引いてcallback名を付加した上で返してくれるもの。つまり、ほとんど何もしないが。
例えば、Google多数決は(既にJSONP対応してるから無意味だけど)こんなふうにリクエストする。
便利なように、多バイト文字はエスケープする。(んだけど自信が無いので何かあったら教えてください。)
JSONでデータを出してくれているサービスは、そのうちJSONPにも対応していくんだろうけれど、もう今すぐ使いたい!って方は、どうぞご利用下さい。
追記 2006.08.30
昨日、コールバック指定をクエリ文字列で行えるように拡張。デフォルトのコールバック指定部分を=(イコール)で始めればOK。
上記のGoogle多数決へのリクエストのコールバックをクエリ文字列で指定するなら
- http://aql.osx.cc/jsonpp/proxy/=piyo:http://aql.osx.cc/GoogleMajority/?mode=json&word=fuga&piyo=hoge
となる。リクエスト段階でコールバック指定部分は削除されるので、最終的にGoogle多数決にリクエストされるURIも同じ。
コールバックの指定がクエリ文字列に限定されているライブラリなんかを使用する時にご利用下さい。