特集
» 2006年08月23日 08時00分 UPDATE

Web 2.0で変わるWebプログラミングの常識:Ajaxの真価はWebサービス連携にあり (4/4)

[大澤文孝,ITmedia]
前のページへ 1|2|3|4       

var result = eval('(' + jsontext + ')');

 つまり、次のようにしてDOMを使い、HTMLコンテンツを書き換えられるのだ。


document.getElementById('addvalue').innerText = 
  result['add'];
document.getElementById('diffvalue').innerText = 
  result['diff'];

クライアントからサーバへJSONで送信する

 一般にクライアントからサーバーへとデータを送信する場合には、データをURLクエリ(GETメソッドの引数)として送る――すなわちREST形式にする――もしくは、データが大きかったりキャッシュが問題となったりする時には、POSTメソッドのボディ部として送信するというのがほとんどだ。送信データ形式としてJSONが使われることは少ない。

 これは呼び出しが簡単であり、サーバ側でのデータの受け取りも、通常のWebアプリケーションのように処理できるためだ(例えばPHPであれば、$_GETや$_POSTで取得できる)。

 しかしクライアントからサーバへと送信するデータをJSON形式にすることも可能だ。

 JavaScriptのオブジェクトをJSON形式に変換したいときには、「JSON in JavaScript」にあるライブラリを使えばよい(関連リンク)

 これにより、サーバ側では適当なライブラリを使ってパースすることができる。例えば、今回説明しているJSON-PHPにはdecodeメソッドがあり、JSONデータをデコードできる。

 クライアント側からサーバ側への送信にJSONを使わなければならない場面は少ないと思われるが、可変長の配列をサーバ側へと送信したいといった場面では、JSON形式を用いると処理が容易になるだろう。

 今回の記事では、JSONについて解説してきた。Ajaxを効率的に利用するには、このようなライブラリが多数公開されているため、効果的に利用することが可能だ。一からすべてを開発するのもよいが、有志によって洗練されたライブラリを使ってみることで効率的なWebアプリケーション開発ができるはずだ。

前のページへ 1|2|3|4       

Copyright© 2012 ITmedia, Inc. All Rights Reserved.

オンラインムック Special

- PR -

Special

- PR -

Special

- PR -

新着記事

節電お役立ち情報(スマートジャパン)

news105.jpg

欧米で約150社の大手企業が導入している電力管理システムが日本でも市場拡大に乗り出す。...

news103.jpg

照明器具の用途は、人間が暮らす空間を照らすという用途だけではない。屋外に立っている...

news092.jpg

オフィスの天井照明を蛍光灯から直管形LED照明に入れ替える例が増えている。しかし、直管...