Web
Picasa Web Albums Data API
a chain
今やフリーの優秀な画像管理ソフトの代表的なPicasa、
そしてそのPicasaと同期して利用できるPicasa Web Album。
アプリ版のPicasa自体はAdobe Bridgeと併用して長年愛用してるので
オンラインの画像管理をそろそろflickrからPicasa Web Albumへ移行しようかと。
で、今回Picasa Web Albums Data APIをFlashで使用したときに
セキュリティサンドボックス侵害で怒られたので、そのメモ。
まさか今さらクロスドメイン問題で躓くとは思ってもみなかった。
Picasa Web Albums Data APIのDeveloper's Guideによると
APIのリクエストのベースURLは
http://picasaweb.google.com/data/feed/
とのこと。
Flashでのクロスドメインへのアクセスにはポリシーファイルのロードが必要。
なので、慣例通りルートにあるであろう「crossdomain.xml」を迷いなくロード。
const POLICYFILE:String = "http://picasaweb.google.com/crossdomain.xml";
Security.loadPolicyFile(POLICYFILE);
そして、そのままユーザー、アルバム、タグなどもろもろのフィードを取得、
画像の読込みもローカルで確認。万事滞りなく順調。
ところが、一通りローカルで確認が終わって、テストサーバーへアップしてみると、
まさかの「セキュリティサンドボックス侵害」。
とりあえずポリシーファイルをブラウザで覗いてみる。
ちゃんと、存在する。じゃあなぜ?とよく見てみると
allow-access-from domain="*.google.com"
外部ドメインからのアクセスが許可されていないぢゃないか。。
これは困った。想定してなかった。まさかの展開。
んんん。。。と悩んで、ご飯食べて、
そしてリファレンスを改めて見直すとあっさり発見。
Using Picasa Web Albums from Flash (crossdomain.xml)。
ポリシーファイルの場所は↓でした。
http://photos.googleapis.com/data/crossdomain.xml
なので、このポリシーファイルを使うとなると、
Flashで扱うフィードのリクエストのURLも↓に変わります。
http://photos.googleapis.com/data/feed/
やっぱりリファレンスはちゃんと読まないとダメっすね。。
ちなみにここのリファレンスでは名前空間(ネームスペース)の解説も
丁寧にしてくれてるので、feedを取得したのにデータが扱えないって
困ってる人はよく読みましょー。
現在はオンラインの画像はほぼflickrに置いていて、
このブログに載せてる画像をはじめ、フォトギャラリー(iffalse.fla)でも
flickr APIを利用して画像を呼び出してます。
flickrはフリーアカウントでは月々100MBまでアップロードできますが、
トータルで200枚しか置いておけず、古いものを削除しつつ使ってましたが
さすがにMAXで200枚はキビシイ。
Picasa Web Albumのフリーアカウントの容量はトータルで1GB。
Web上でjpgで公開するだけで考えれば当分の間は容量で困ることはなさそう。
で、公開から2年経ったフォトギャラリーiffalse.flaをリニューアルする予定でっす。
« EVANGELION:2.0 | TOP | Run, Melos »
Trackbacks
URL:
http://iffalse.com/cgi/mt/mt-tb.cgi/129




