访问URL的Flash Builder 4安全性错误目标:DefaultHTTP

时间:2011-02-22 17:15:10

标签: flash security adobe flexbuilder

我已经构建了一个访问合作伙伴公司的.NET Web服务的FB4应用程序。该应用程序在FB4开发环境中运行良好,但在发布到我的服务器时无法运行。我无法弄清楚如何通过以下错误:访问URL的安全性错误目的地:DefaultHTTP

我不太可能在他们的服务器上获得crossdomain.xml文件,所以我试图让它使用代理工作。 proxy.php与swf位于同一目录中,如果我直接在浏览器中使用它,它就可以正常工作。

以下是我目前的设置:

proxy.php:

<?php
$session = curl_init(trim(urldecode($_GET['url'])));                   // Open the Curl session
curl_setopt($session, CURLOPT_HEADER, false);          // Don't return HTTP headers
curl_setopt($session, CURLOPT_RETURNTRANSFER, true);   // Do return the contents of the call
$xml = curl_exec($session);                            // Make the call
header("Content-Type: text/xml");                  // Set the content type appropriately
echo $xml;        // Spit out the xml
curl_close($session); ?> 

Flash Builder 4中的代码:(我在FB4中使用Webservice对象)

wsdl = http://mydomain.com/autoben/proxy2.php?url=http://staging.partnerCompany.net/api/v01_00/theservice.asmx?wsdl

Flash播放器是版本10.x

我已经工作了好几天了,任何帮助都将不胜感激。我显然不理解最新的Flash播放器中内置的新安全规则。

汤姆。

错误的屏幕截图可以在这里看到:。

flex error

3 个答案:

答案 0 :(得分:1)

听起来像是跨域政策问题。点击此处http://livedocs.adobe.com/flex/3/html/help.html?content=security2_04.html获取Adobe的建议。

答案 1 :(得分:0)

我看不出任何明显的理由说明为什么这在概念上不起作用。因此,可能会有一些小细节绊倒它。

我建议使用网络调试代理来确定管道的确切内容,我个人更喜欢Charles,但Fiddler之类的内容也应该有用。

答案 2 :(得分:0)

确保您使用相对路径获取网址而不是绝对路径,如果您转到http://mydomain.com并尝试从http://www.mydomain.com(www.subdomain)获取代理网址时出现安全错误将被抛出。