mx.utils
public class URLUtil
继承URLUtil Inheritance Object

URLUtil 类是一个静态类,其方法用于处理 Flex 内的完整或相对 URL。

另请参见

mx.managers.BrowserManager
Accessing information about the current URL


公共属性
 属性定义方
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
 Inheritedprototype : Object
[静态] 对类或函数对象的原型对象的引用。
Object
公共方法
 方法定义方
  
[静态] 将潜在的相对 URL 转换为完全限定 URL。
URLUtil
  
[静态] 返回指定 URL 的端口号。
URLUtil
  
[静态] 返回指定 URL 的协议部分。
URLUtil
  
[静态] 返回指定 URL 的服务器名称。
URLUtil
  
[静态] 返回指定 URL 的域和端口信息。
URLUtil
 Inherited
指示对象是否已经定义了指定的属性。
Object
  
[静态] 如果 LoaderConfig.url 属性不可用,replaceTokens() 方法将不能正确替换服务器名称和端口属性。
URLUtil
  
[静态] 确定 URL 是否使用安全 HTTPS 协议。
URLUtil
  
[静态] 确定 URL 是否使用 HTTP、HTTPS 或 RTMP 协议。
URLUtil
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
  
objectToString(object:Object, separator:String = "", encodeURL:Boolean):String
[静态] 枚举对象的动态属性(通过在循环中使用 for)并返回一个字符串。
URLUtil
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
  
[静态] 返回新字符串,其端口用指定端口替换。
URLUtil
  
[静态] 用给定协议替换指定 URI 的协议。
URLUtil
  
[静态] 返回一个新字符串,其端口和服务器标记已用当前运行的应用程序中的端口和服务器替换。
URLUtil
 Inherited
设置循环操作动态属性的可用性。
Object
  
stringToObject(string:String, separator:String = "", decodeURL:Boolean):Object
[静态] 从字符串返回对象。
URLUtil
 Inherited
返回指定对象的字符串表示形式。
Object
  
[静态] 测试两个 URI 字符串是否等效,忽略大小写和末尾斜杠的差异。
URLUtil
 Inherited
返回指定对象的原始值。
Object
公共常量
 常量定义方
  SERVER_NAME_TOKEN : String = "{server.name}"
[静态] 由应用程序的服务器名称替换的传递给 replaceTokens() 方法的字符串中的模式。
URLUtil
  SERVER_PORT_TOKEN : String = "{server.port}"
[静态] 由应用程序的端口替换的传递给 replaceTokens() 方法的字符串中的模式。
URLUtil
方法详细信息
getFullURL()方法
public static function getFullURL(rootURL:String, url:String):String

将潜在的相对 URL 转换为完全限定 URL。如果该 URL 不是相对值,则原样返回。如果 URL 以斜杠开头,则在前面加上根 URL 的主机和端口。否则在前面加上主机、端口和路径。

参数

rootURL:String — 如果 url 为相对值,该 URL 用于解析由 url 参数指定的 URL。
 
url:String — 要转换的 URL。

返回
String — 完全限定 URL。
getPort()方法 
public static function getPort(url:String):uint

返回指定 URL 的端口号。

参数

url:String — 要分析的 URL。

返回
uint — 指定的 URL 的端口号。
getProtocol()方法 
public static function getProtocol(url:String):String

返回指定 URL 的协议部分。以下示例显示基于不同的 URL 返回的内容:

getProtocol("https://localhost:2700/") returns "https"
      getProtocol("rtmp://www.myCompany.com/myMainDirectory/groupChatApp/HelpDesk") returns "rtmp"
      getProtocol("rtmpt:/sharedWhiteboardApp/June2002") returns "rtmpt"
      getProtocol("rtmp::1234/chatApp/room_name") returns "rtmp"

参数

url:String — 包含要解析的 URL 的字符串。

返回
String — 协议;如果未指定协议,则为空字符串。
getServerName()方法 
public static function getServerName(url:String):String

返回指定 URL 的服务器名称。

参数

url:String — 要分析的 URL。

返回
String — 指定的 URL 的服务器名称。
getServerNameWithPort()方法 
public static function getServerNameWithPort(url:String):String

返回指定 URL 的域和端口信息。

参数

url:String — 要分析的 URL。

返回
String — 指定的 URL 的服务器名称和端口。
hasUnresolvableTokens()方法 
public static function hasUnresolvableTokens():Boolean

如果 LoaderConfig.url 属性不可用,replaceTokens() 方法将不能正确替换服务器名称和端口属性。

返回
Boolean — 如果 LoaderConfig.url 属性不可用,则为 true。否则为 false
isHttpsURL()方法 
public static function isHttpsURL(url:String):Boolean

确定 URL 是否使用安全 HTTPS 协议。

参数

url:String — 要分析的 URL。

返回
Boolean — 如果 URL 以 “https://”开头,则为 true
isHttpURL()方法 
public static function isHttpURL(url:String):Boolean

确定 URL 是否使用 HTTP、HTTPS 或 RTMP 协议。

参数

url:String — 要分析的 URL。

返回
Boolean — 如果 URL 以 “http://”、“https://”或“rtmp://”开头,则为 true
objectToString()方法 
public static function objectToString(object:Object, separator:String = "", encodeURL:Boolean):String

枚举对象的动态属性(通过在循环中使用 for)并返回一个字符串。通常使用此方法将 ActionScript 对象转换为一个字符串,然后将其附加到 URL 的末尾。默认情况下,将对无效的 URL 字符进行 URL 编码(转换为 %XX 格式)。

例如:

var o:Object = { name: "Alex", age: 21 };
      var s:String = URLUtil.objectToString(o,";",true);
      trace(s);
在跟踪日志中写入“name=Alex;age=21”。

参数

object:Object — 要转换为字符串的对象。
 
separator:String (default = "") — 分隔字符串中对象的各 property:value 对的字符。
 
encodeURL:Boolean — 是否对字符串进行 URL 编码。

返回
String — 传递给方法的对象。
replacePort()方法 
public static function replacePort(uri:String, newPort:uint):String

返回新字符串,其端口用指定端口替换。如果指定的 URI 中没有端口,将插入该端口。该方法要求 URI 内已指定了协议。

参数

uri:String — 包含其端口被替换的 URI 的字符串。
 
newPort:uint — 包含用于替换的新端口的 uint。

返回
String — 使用新端口的 URI。
replaceProtocol()方法 
public static function replaceProtocol(uri:String, newProtocol:String):String

用给定协议替换指定 URI 的协议。

参数

uri:String — 包含其协议需要被替换的 URI 的字符串。
 
newProtocol:String — 包含要使用的新协议的字符串。

返回
String — 替换其协议的 URI;如果 URI 不包含协议,则为空字符串。
replaceTokens()方法 
public static function replaceTokens(url:String):String

返回一个新字符串,其端口和服务器标记已用当前运行的应用程序中的端口和服务器替换。

参数

url:String — 包含应使用应用程序中的端口和服务器替换的 SERVER_NAME_TOKEN 和/或 SERVER_NAME_PORT 的字符串。

返回
String — 端口和服务器被替换的 URI。
stringToObject()方法 
public static function stringToObject(string:String, separator:String = "", decodeURL:Boolean):Object

从字符串返回对象。字符串包含 name=value 对,它们成为返回对象的动态属性。这些属性对由指定的 separator 分隔。该方法可转换数字、布尔值、数组(由“[]”定义)以及子类(由“{}”定义)。默认情况下,%XX 格式的 URL 模式将转换为相应的字符串字符。

例如:

var s:String = "name=Alex;age=21";
      var o:Object = URLUtil.stringToObject(s, ";", true);
返回对象:{ name: "Alex", age: 21 }

参数

string:String — 要转换为对象的字符串。
 
separator:String (default = "") — 分隔字符串中的 name=value 对的字符。
 
decodeURL:Boolean — 是否对字符串中 URL 编码的字符进行解码。

返回
Object — 包含从传递给该方法的字符串中提取的属性和值的对象。
urisEqual()方法 
public static function urisEqual(uri1:String, uri2:String):Boolean

测试两个 URI 字符串是否等效,忽略大小写和末尾斜杠的差异。

参数

uri1:String — 要比较的第一个 URI。
 
uri2:String — 要比较的第二个 URI。

返回
Boolean — 如果 URI 相等,则为 true。否则为 false
常量详细信息
SERVER_NAME_TOKEN常量
public static const SERVER_NAME_TOKEN:String = "{server.name}"

由应用程序的服务器名称替换的传递给 replaceTokens() 方法的字符串中的模式。

SERVER_PORT_TOKEN常量 
public static const SERVER_PORT_TOKEN:String = "{server.port}"

由应用程序的端口替换的传递给 replaceTokens() 方法的字符串中的模式。