某画像DBにも、REST APIの組み込みに挑戦。
出力を、XMLか、JSONにするか悩む。
XMLの場合、Flashなどでも使えるが、JavaScriptでパースするのがちょっと面倒。
JSONの場合、JavaScriptへのハンドリングはらくだけど、Flashには渡せないし、PEARのJSONのライブラリが実は使いづらい。勝手に"/"などがエスケープされてしまう。JSONのコードを調べればいいんだろうけど、マンドクセなので後回し。
まずはXMLで出力してみる。
実はXMLをちゃんと勉強したわけでもなく、最適な構造にするにはどうすればよいのかなどは分からない。
とりあえずベーシックに、
という構造のXMLにしようかと思ったが、画像に対して、サイズやパスは、「要素」なんじゃないかと悩む。つまり、
と書くべきなのではないか・・と。ツリー構造の下にぶらさげるのか、属性として入れるのか、むずかしいなぁ。この場合は、正式には属性だろうなぁ。
サイズやパスは、画像の「子」ではないからな。
しかし、この方法だとちょっと問題があることがわかった。JSON形式に出力しようとすると、うまく行かない。そもそも、XMLとJSONの構造は対にならない(とおもう)ので、そのままではJSON形式にはできない(と、思う)
最初のベタな構造であれば、JSONにも変換しやすい。
あとは、JavaScript中でXMLのパースをどうするか、、だが、それには、
JKL.ParseXML - ajax 通信処理ライブラリ
のライブラリを使わせてもらった。
非常に簡単で便利・・と思ったら、ちょっとはまった。
ライブラリを組み込んで、呼び出してみるもエラーになる。
シンプルな書式だから間違えようがないのにと思ったら、
ローカルファイルから、httpへの呼び出しはXMLHttpRequestがエラーになるようだ。知らなかった。たとえ127.0.0.1でもダメ。
まぁ、呼び出し側もhttp経由でアクセスしてればOKだったんだけど。
時間切れで完成まではいかなかったけど、だいぶやり方はわかった。
やっぱ、こういうのは作ってハマってなんぼだよなぁ〜
というか、便利なライブラリがってほんと助かった。