`
yunzhongxia
  • 浏览: 648425 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Flex获得URL参数

 
阅读更多

      Flex获得URL参数有两种情况:一 获得swf后面的参数;二 获得swf所在页面的url参数。

      1 获得swf后面的参数

        Application Module等编译后生成一个swf文件,外面可以在swf后面添加一些参数来实现某些功能,例如debug=true,动态调整flex的日志级别。

        如果是Application或Module等,可以直接用this.loaderInfo.parameters.var1;

        如果是其它的就需要获得该DisplayObject 对象的root对象来获得参数,例如:root.loaderInfo.parameters.var1;

 

      2 获得swf所在页面的url参数

         在flash builder中调试的时候,html页面后面的参数自动的添加了debug=true,flex是如何获得该参数的呢?答案是JavaScript。
         在Flex应用程序中,ExternalInterface主要用来让ActionScript直接与Flash Player容器进行通信。ExernalInterface类通常作为ActionScript与JavaScript进行通信的桥梁。在JS中,Window对象用来代表一个Web浏览器窗口,而窗口的Location对象则代表了当前显示的URL,于是,要想获取URL中的参数,

通常使用下面的语句:

        window.location.href.toString   //得到URL的完整文本    
        window.location.search.substring  //得到问号后面部分的URL文本
通常的参数对以test.html?debug=true这样的形式给出,在获取到问号后面的URL文本后,还需要对其分解,这时有两种途径,一种是分解过程在JS中完成,然后将最终的结果值传递给Flex,另一种是将分解的过程放在Flex中去完成。下面是as代码的实现,好处是不用写js代码了。

       

var queryParamStr:String = ExternalInterface.call("window.location.search.substring",1); 

 

 

queryParamStr包含所有的url参数,下面是解析url参数的方法

 

   

                                                /**
			 * 获得一个url中的参数 
			 * @param urlStr
			 * @return 如果没有参数则返回null 有参数则返回key value形式的对象
			 * 
			 */
			public  static function getUrlParam(urlStr:String):Object{
				var pattern:RegExp= /.*\?/;
				urlStr=urlStr.replace(pattern, "");
				if(urlStr.indexOf("=")==-1)
				{	return null;
				}
				// 通过&拆分成数组name=value,保存为String类型数据
				var params:Array=urlStr.split("&");
				if(params==null||params.length==0){
					return null;
				}
				var paramObj:Object={};
				for(var i:int=0;i<params.length;i++){
					var keyValue:Array=params[i].split("=");
					paramObj[keyValue[0]]=keyValue[1];
				}
				return paramObj;
			}

 

 

如果参数中中文需要解析,请参考url参数编码和解码

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

   

0
1
分享到:
评论

相关推荐

    flex获得浏览器参数,flex获得url参数

    在这个例子中,它被用来调用JavaScript的 `window.location.search.substring` 方法来获取URL的查询字符串,从而得到URL参数。 4. **获取URL参数**:`getPramas()` 函数是实现这个功能的核心。首先,它通过 `...

    Flex获得URL参数值.doc

    当需要获取URL参数时,Flex应用会借助JavaScript来获取浏览器中的URL参数,然后再通过ExternalInterface将这些参数传递给ActionScript。 ExternalInterface类是ActionScript与Flash Player的宿主环境(如HTML页面)...

    flex获得html容器传递的url参数值

    在本文中,我们将深入探讨如何在Flex中获取这些URL参数值。 首先,我们要明白,当我们使用Flex Builder开发应用程序时,编译后的SWF文件会被一个HTML容器包裹,因此在实际运行时,我们实际上是在运行这个HTML文件。...

    flex中moduleLoader加载module时传递参数源代码

    在`onModuleComplete`函数中,我们获取了加载模块的`DisplayObject`实例,然后通过`loaderInfo`属性访问到`parameters`对象,从而得到传递的参数。 在FlexTest项目中,你可以找到一个实际的应用示例,展示了如何...

    ArcGIS Flex 例子——源码(强烈推荐)

    记得安装 ArcGIS API for Flex 插件,以获得更好的开发支持。 7. **学习路径** 对于初学者,建议先熟悉 Flex 基础知识,包括 MXML 和 ActionScript 语言,然后逐步学习 ArcGIS Flex API 及其组件库。通过阅读 ...

    将 Flex 集成到 Java EE 应用程序的最佳实践(完整源代码)

    MessageBrokerServlet 是真正处理 Flex 远程调用请求的 Servlet,我们需要将其映射到指定的 URL: 清单 5. 定义 Flex servlet &lt;servlet&gt; &lt;servlet-name&gt;messageBroker&lt;/servlet-name&gt; &lt;servlet-class&gt;...

    +Flex+集成到+Java+EE+应用程序的最佳实践(完整源代码)

    通过 RemoteObject 进行调用虽然简单,但存在不少问题:首先,RemoteObject 是一个 Dynamic Class,Flex Builder 的编译器无法替我们检查参数类型和参数个数,这样,在编写 ActionScript 代码时极易出错。...

    Flex3 HTTPService 获得json数据

    总的来说,使用Flex3的HTTPService获取JSON数据涉及创建服务实例,配置请求参数,监听结果事件,以及可能的手动JSON解析。虽然Flex3的时代已过,但理解其工作原理对学习现代Web开发技术仍然有帮助,比如在理解现代...

    flex 调用新浪微博接口类库整理

    在调用微博接口之前,确保你已经注册成为新浪开发者,并获得了应用的API密钥(App Key)、应用密钥(App Secret)以及OAuth认证所需的回调URL。这些信息将用于身份验证和授权过程,使得你的Flex应用能够合法地代表...

    spring-flex-reference

    通过URL映射机制将来自Flex客户端的请求转发至相应的Message Broker进行处理。 **使用Spring管理的目的地从Flex客户端:** 可以利用Spring管理的目的地(Destination)来简化Flex客户端与后端服务之间的交互过程。...

    Flex+blazeds实现与mySQL连接数据库

    - **性能优化**:根据实际情况调整 BlazeDS 的配置参数,以获得最佳性能。 - **错误处理**:完善异常处理机制,提高系统的健壮性。 通过以上的步骤,你可以成功地利用 Flex 和 BlazeDS 实现与 MySQL 数据库的交互。...

    tianditu.zip_arcgis切片_flex_天地图

    在处理HTTP请求时,可以使用Flex的`mx.rpc.http.HTTPService`组件,设置其URL为切片服务地址,将计算得到的Z、X、Y参数添加到URL中。成功获取到切片数据后,可将其转换为Bitmap对象,然后使用`BitmapData.draw()`...

    十二个非常有用的Flex函数Source In Flex

    此函数用于在Flex应用中打开一个URL链接。参数`_blank`表示在新窗口或标签页中打开该链接。 **示例代码**: ```actionscript var url: String = "http://ntt.cc"; navigateToURL(new URLRequest(url), '_blank'); `...

    TM_C_081113_ArcGIS-API-for-Flex-教程_v1.00.pdf

    3. 设置 `MapView` 组件的相关属性,例如地图服务的 URL、初始显示范围等。 4. 使用 ActionScript 代码来控制地图的显示,如缩放、平移等操作。 **1.2.3 事件(Event)** 地图组件提供了多种事件,例如地图加载完成...

    12个Flex常用功能代码

    3. **打开新浏览器窗口**:使用`navigateToURL(new URLRequest('http://ntt.cc'), '_blank')`可以打开一个新的浏览器窗口,其中`_blank`参数表示在新的标签页或窗口中打开URL。 4. **刷新浏览器**:若需刷新当前...

    Flex 有用的几行代码

    - **知识点说明**:`navigateToURL()` 方法可以用来打开一个新的 URL,参数 `_blank` 表示在新的浏览器窗口或标签页中打开该 URL。 - **应用场景**:当用户点击某个链接时,希望在新窗口中打开,而不是在当前页面...

    12条有用的flex代码

    - 第一个参数是 `URLRequest` 对象,指定了要导航到的具体URL地址。 - 第二个参数表示目标窗口或框架,`'_blank'` 表示在一个新的浏览器窗口中打开链接。 ### 4. 刷新当前页面 ```as3 navigateToURL(new ...

    AMFPHP入门教程,flex+php,flash+php

    下载完成后,将解压得到的`amfphp`文件夹复制到Apache服务器的网站根目录。确保服务器正确配置,然后访问`http://localhost/amfphp/gateway.php`,如果显示“amfphp and this gateway are installed correctly”,则...

    ArcGIS for flex API 2.5迁移到3.x

    `ClassBreaksRenderer`的`attribute`属性现在被称为`field`,`MapImage`的`href`属性改为`source`,`WebMapUtil`的`arcgisSharingURL`属性现在是`portalURL`,而`FeatureSet`的`fromJSON()`和`toJSON()`方法返回的...

    flexapi-client-python:FlexAPI Python客户端

    - 请求参数:支持设置请求头、查询参数、请求体等。 - JSON序列化与反序列化:自动处理数据的JSON格式转换,方便与API交互。 - 并发调用:通过异步操作或线程池实现多个API调用的并发,提高性能。 五、示例应用 1. ...

Global site tag (gtag.js) - Google Analytics