0

私のアプリケーションでは、google.com からのデータを表示しようとしています。私の問題は、常にこのエラーがあることです:

Error #2048: Security sandbox violation: https://XXXXX.com/runtime.swf cannot load data from http://www.google.com/finance/company_news?q=null:OZG&output=rss.

Google の crossdomain.xml は次のようになります。

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
  <site-control permitted-cross-domain-policies="by-content-type" />
</cross-domain-policy>

そして、AS3 コードで次のようにページを呼び出します。

var hdr:URLRequestHeader = new URLRequestHeader("Content-type", "text/x-cross-domain-policy");
var request:URLRequest = new URLRequest(feedURL);
request.requestHeaders.push(hdr);
//then load the request with an UrlLoader

フラッシュがなぜこのクロス ダミン セキュリティ エラーを表示するのか、何か考えはありますか?

4

2 に答える 2

0

PHP プロキシを使用できますが、cURL を有効にする必要があります。例えば:

$gogle = curl_init(); 
curl_setopt($gogle , CURLOPT_URL, $googleurl); 
curl_exec($gogle); 

さらに操作が必要な場合はCURLOPT_RETURNTRANSFER、コンテンツを出力する代わりに文字列として返すオプションを使用します。

curl_setopt($ch, CURLOPT_RETURNTRANSFER , TRUE); 
$content = curl_exec($ch); 

POST 引数を渡す必要がある場合に使用CURLOPT_POSTFIELDSします (例: "param=value&q=google")

于 2012-11-21T19:12:33.797 に答える
0

crossdomain.xml ファイルの意味を実は誤解していました。基本的に、Google のクロスドメイン ポリシー ファイルはどのドメインも許可しません。

私の唯一の解決策は、プロキシを使用することだと思います...

于 2012-11-21T04:49:32.640 に答える