2012年2月25日土曜日

マリンアクアリウムのためのサンプをセットアップする方法

クロスドメインPHP|ウェブサービスAPI|1.023world



クロスドメインPHP

ウェブサービスAPI を利用したウェブアプリケーションを開発する上で、 例えば Ajax(JavaScript)を使用してレスポンスXMLを取得しようとする場合、 同じドメイン内から自サイト内のファイルを取得する分には問題ありませんが、 別サーバーにあるファイルを取得しようとする場合は、 クロスドメインの問題によりアクセスできないようになっています。

○ Ajax(ドメインA) ───→ ウェブアプリケーションAPI (ドメインA)
× Ajax(ドメインA) ───→ ウェブアプリケーションAPI (ドメインB)

この場合、クロスドメイン問題を回避して、レスポンスXMLの取得とAjaxへのデータ受け渡しをアシストしてくれるような別の仕組み(CGI やPHP等)が必要になってきます。


どの沼クーラー動作しますか?
○ Ajax(ドメインA) ───[CGI/PHP]──→ ウェブアプリケーションAPI (ドメインB)

そのための簡単なPHPをご紹介します。
以下のソースをコピーして、「load.php」と言うファイル名で保存してください。(ファイル名は自由です)

たったこれだけでOKです。
CGI だともう少し長いソースになったり、実行にはパーミッションの設定が必要になりますが、 PHPならサーバーへ放り込むだけで済むので、とても管理が楽になります。(もちろんPHP対応のサーバーが必要)

あとは、AjaxからウェブサービスAPI へリクエストする際に、このPHPを介すだけで取得が可能になります。
(load.php は Ajax を実行する側のサーバーに設置してください)


優れたカプラ(ワールワッシャー)のようなものを見ていない
× Ajax ──[取得不可]─→ http://API のURL/
○ Ajax ──[取得成功]─→ load.php?url='GET',url,true); xml.onreadystatechange = function(){ if(xml.readyState == 4){ clearInterval(timer); alert(xml.responseText); // ここへレスポンス取得後の処理を記述 } }; xml.send(null); } function objXML(){ try{ return new XMLHttpRequest(); }catch(e){ try{ return new ActiveXObject('Msxml2.XMLHTTP'); }catch(e){ try{ return new ActiveXObject('Microsoft.XMLHTTP'); }catch(e){ return null; } } } } function timeout(){ clearInterval(timer); xml.abort(); alert('ERROR : Timeout.'); }

- getXML('http://api.anomura.1023world.net/'); * 5秒後にタイムアウト (エラー)

- getXML('load.php?url=');


propolene作業を行います

レスポンス取得後の XML のパーサー部分のスクリプトの記述は割愛します。自由に行ってください。

ちなみに「クロスドメインPHPを使ったAjaxサンプル」と書いておきながら、ここではクロスドメインによる実験結果を見せるために、 敢えてスクリプト自体にはload.phpを介す処理を含めていません(引数自体に含めて関数へ渡してます)。 なので、実際にこのサンプルソースを流用する際には、スクリプト内にPHPパスも含めてしまうと良いでしょう。

また、当サイトのウェブアプリケーションサンプル JavaScript も、参考になれば幸いです。
api-anomura.js / 超ヤドカリ図鑑 Ajax
api-shop.js / ショップ新着案内 Ajax



These are our most popular posts:

KR93SP、深度の青チャンネル|結果 Oh! Life|1.023world

2011年12月4日 ... 海洋の仕組みと細菌・微生物から学ぶマリンアクアリウムサイト ... 目的の水深 スペクトルで日照変化を再現するための"深度"の青チャンネルです。 .... でも、水深再現 フローに関して、これよりも良い方法があるならお聞かせください。 各種PPFD ... read more

Les Clefs dOr - Little-eyes.net

尻は確認済。 KILLA23LX2WC64263VO4 h??p: download.serenescreen.com/ download/MarineAquarium2/Windows/MAquarium-V2.exe 3Dマリンアクアリウム+ TIME と 3Dアクアリウム金魚 *learn more YOSHIRIN* 鈴木あみえもん様のはTIME 無し ... read more

Marine ProFile Vol.8 「ミニマリンアクアリウムレイアウト」 マリンミュゼ ...

[ ログイン ]. このストアをお気に入りリストに追加する ... 1・ ミニマリンアクアリウムを 楽しむために 2・ ミニマリンアクアリウムサンプル集 Vol. 1 10・ ミニマリン ... メール便」 はポストに投函する配達方法なので、「代引き」は使用できません。) *「メール便」でも、 「お ... read more

クロスドメインPHP|ウェブサービスAPI|1.023world

ウェブサービスAPI を利用したウェブアプリケーションを開発する上で、 例えば Ajax( JavaScript)を使用してレスポンスXMLを取得しようとする場合、 同じドメイン内から自 サイト内のファイルを取得する分には問題ありませんが、 別サーバーにあるファイルを 取得 ... read more

Related Posts



0 コメント:

コメントを投稿