メイン コーダーズルーム【スクリプト系】 crossdomain.xml以外の方法で別サーバーからデータを取ってくる方法 | 投稿するにはまず登録を |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
Stommy | Åê¹ÆNo.41972 投稿日時: 2009-4-2 21:18 |
新米 居住地: 投稿: 1
使用環境:
Flash CS4, MacOSX |
crossdomain.xml以外の方法で別サーバーからデータを取ってくる方法 Twitterからデータを取ってこようとしています。
Twitterのcrossdomain.xmlで、他のサーバーからのアクセスは拒否されます。 自分なりの調べてみたところ、CGIで何とかなると書かれていたのですが、詳しいことは見つけることが出来ませんでした。具体的にどうすればいいのか、よくわかりません。 よろしくおねがいします。 Twitterのcrossdomain.xml -------------------- <?xml version="1.0" encoding="UTF-8"?> <cross-domain-policy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.adobe.com/xml/schemas/PolicyFile.xsd"> <allow-access-from domain="twitter.com" /> <allow-access-from domain="api.twitter.com" /> <allow-access-from domain="search.twitter.com" /> <allow-access-from domain="static.twitter.com" /> <site-control permitted-cross-domain-policies="master-only"/> <allow-http-request-headers-from domain="*.twitter.com" headers="*" secure="true"/> </cross-domain-policy> ------------------------------- |
961832p | Åê¹ÆNo.42048 投稿日時: 2009-4-9 16:05 |
常連 居住地: Akiruno-shi 投稿: 155
使用環境:
:AS3: - Adobe Flex SDK, Eclipse, AIR GEAR - LB.Log AS3, Alcon2 :AS2: - AMES(ASDT, MTASC, Eclipse, swfmill) - Natural Entry Point Method - LB.Log, Zeroi Pro, Firefox, Chromium(Iron), IE ---------------- Pro, |
Re: crossdomain.xml以外の方法で別サーバーからデータを取ってくる方法 どのようなデータを取得したいのか不明なのですが、気になるので自分も挑戦してみました。 ・テストページ、スクリーンショット まとめWikiから公式APIの存在を知ったので見ていると、認証を必要としない public_timelineメソッド を発見。 自分はアカウントをもっていないので、このメソッドを使って公開ユーザーの最新発言をXML形式で取得、Flashで表示してみることに。 ・Twitter API - TwitterまとめWiki
まず、上記URLをブラウザに入れて直接取得できることを確認しました。 次にFlashからの取得ですが、そのままURLを入れた場合はやはり取得できませんでした。作成は FlexSDK3.3.0.4852 です。
あーだこーだやっていましたが、やっぱりCGIスクリプトを使って取ってくるのが確実なようです。
今回、取得用CGIスクリプトにはPerlを使いましたが、PHPなど他の言語でも大丈夫です。 ・FlashでTwitterの発言を取得してみる | alt ・YOPPA BLOG » Flash(AS3)でcrossdomain.xml無しにクロスドメインにアクセスする Fx3、IE6、IE7、Chromiumの各ブラウザで確認していたところ、なぜか IE6 だけ URLLoaderクラス の IOErrorEvent.IO_ERRORイベント が発生してデータ取得できないという問題がおきました(エラー番号は#2032)。 IE6のバグなのか分かりませんが、コンテンツが圧縮転送されているとダメということが分かり、圧縮しない設定を .htaccess に記述して回避できました。このへんはWebサーバーの環境によって違ってくると思います。 ・FlexのHTTPアクセスで「#2032: ストリームエラー」が出てハマる - ヒマをみつけてWeb開発
公式サイトには色々なライブラリがあり、Flash用のもいくつか紹介されていました。 その中でも Tweetr は、ドキュメントや取得用CGIスクリプト(PHP)も付属していましたので、手軽に始められそうな感じがしました。 ・Twitter API Wiki / Libraries | ActionScript/Flash 試していませんが Adobe AIR では、CGIスクリプトを使わなくても出来るもようです。 ・Adobe AIRでiTunes×Twitterクライアントを作ってみた(1/2) ? @IT 以上、日記みたいになってしまいましたが(汗)、何かの手がかりになれば幸いです。
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
投稿するにはまず登録を | |