如何把request param data传给flex app
参考文档 1. 关于flex html template wrapper (以后的文章详细讲解): http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf663fe-7fff.html 2. Creating a wrapper: http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-7ecf.html 3. 通过flashvar property来把request param data传给flexapp: http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf626ae-7feb.html ? 4. Flex app直接从URL fragments获取:http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-7e9c.html ? 先看如何通过flashvarproperty来把requestparam data传给flexapp: Step 1 create a flex project Step 2 open /html-template/index.template.html file,and find following codes ???????????? var flashvars ={}; Step 3 add following 2 line codes below it ??????????? flashvars.firstname= "Nick"; ??????????? flashvars.lastname= "Danger"; 如果是用JSP page,则可以为
??????????? flashvars.firstname= "<%= request.getParameter("firstname")%>"; ??????????? flashvars.lastname= "<%= request.getParameter("lastname")%>"; 还可以通过在swf的file path里添加param来代替上面这2行代码 (下面这种方式和上2行代码的作用一样!选择其中一种方式即可) ??????? <script type="text/javascript"> 注意:flashVars properties的值必须是URL encoded,而且该值所包含的参数之间用“&”来连接 Step 4 (optional) 在index.template.html里你还会看到flash object tag <object>在<noscript>file里,要使其使用flashvar,你的<object>应该添加flashvar param ???<object id='mySwf' classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' height='100%' width='100%'> ???????<param name='src' value='FlashVarTest.swf'/> ?????? ?<param name='flashVars' value='firstname=Nick&lastname=Danger'/> ?????? ....... Step 5 在flex app里如何获取flashvar传来的data <s:Application ... creationComplete="initVars()">??? ? 如果要获取flashvar里的所有params,那么使用下列代码 ????????????? for (var i:String in FlexGlobals.topLevelApplication.parameters) { Step 6 run the flex app 再看如何直接在flex app里解析URL里的param: Flex app通过BrowserManager and URLUtil来直接获取URL里的paramBrowserManager是一个Singleton管理器,用于充当浏览器和应用程序之间的代理。使用它可以访问浏览器地址栏中的URL,这与访问 JavaScript中的document.location属性类似。当url属性发生更改时调度这些事件。然后侦听器可以响应、更改该URL和/或阻止其它对象获取此事件。 注意:URL里的params是跟在"#"后面,而不是跟在"?"后面!!例如 ????????? http://www.mydomain.com/MyApp.html#firstName=Nick&lastName=Danger Flex app里直接获取URL的param的代码 import mx.managers.BrowserManager; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |