FLEX获取GET数据

一般情况下,我们接受FLEX数据一点都不难,可以由FLEX应用向PHP{或者其他任何脚本}发送一个请求,可以以各种不同的方式{AMFPHP,WebService,其他},这种方法的好处是使用方便,自由,缺点是,必须要从swf发送请求才可以实现,对于我们需要直接从URL上获取数据,并反馈在FLASH里面的话,就有些力不从心了。

 

现在给出另一种方法:http://….example.swf?username=xxx

当URL是这种形式的时候,我们希望直接在FLASH上做出反应,而不希望通过其他脚本来中转。

这是,用mx.core.Application类的parameters属性可以获取GET的数据。

给个例子

<?xml version=”1.0″ encoding=”utf-8″?>

<mx:Application xmlns:mx=”http://www.adobe.com/2006/mxml” layout=”absolute” creationComplete=”init();”>

<mx:Script>

  <![CDATA[

private function init():void

{

trace(this.parameters.username);

}

  ]]>

</mx:Script>

</mx:Application>

 

但是很多时候,我们并不希望仅仅展示一个flash给用户,在绝大多数时候,我们都需要由另一个脚本来掌控全局。

对于URL是http://….example.php?username=xxx

这样的情况下,PHP对此无能为力,相信JAVA或者C#也是一样。但是不要忘了JS,这时,我们可以在js里面写一个函数
function getUrl(){return window.location.url;}

在FLEX中这样获取

<?xml version=”1.0″ encoding=”utf-8″?>

<mx:Application xmlns:mx=”http://www.adobe.com/2006/mxml” layout=”absolute” creationComplete=”init();”>

<mx:Script>

  <![CDATA[

private function init():void

{

                 var url:String=ExternalInterface.call("getUrl");

                 trace(url);

}

  ]]>

</mx:Script>

</mx:Application>

 

 

 

本人小菜,欢迎接受各位大侠批评
原文地址:https://www.cnblogs.com/zack/p/1434645.html