在AS3中获取域名

时间:2010-01-17 23:39:15

标签: flash actionscript-3 dns string-parsing

我知道如何获取网页的网址,但如何仅提取域名和域名?

无论有没有www,它都必须返回相同的值,并且无论文件是什么,有或没有尾部斜杠等,它都必须返回相同的值。

因此www.domain.com会返回domain.com,而domain.com/index.php也会返回相同的内容。

这可能吗?

如果有,有没有办法不调用ExternalInterface.call('window.location.href.toString')

感谢您的帮助!

3 个答案:

答案 0 :(得分:5)

您可以使用loaderInfo类,然后使用正则表达式对其进行修剪。

喜欢这个。找到[0]的跟踪将域返回到.com。

package{

import flash.display.LoaderInfo
import flash.display.MovieClip


public class sample extends MovieClip {
    public var urlStr:String;

    public function sample (){
        getLocation(this.loaderInfo.url);

    }
    public function getLocation(urlStr:String){
        var urlPattern:RegExp = new RegExp("http://(www|).*?\.(com|org|net)","i");
        var found:Object =  urlPattern.exec(urlStr);
            trace(found[0]);

    }

}

}

答案 1 :(得分:2)

在Flex中使用

Application.application.url

但是在直接Flash中你需要采用不同的方式

http://renaun.com/blog/2008/10/16/264/

当然,你可以根据需要修改结果,因为它是一个字符串。

答案 2 :(得分:2)

var domain = "http://www.example.com/";
var pathArray = domain.split("//");
pathArray = pathArray[1].split("/");
trace(pathArray[0]); //traces www.example.com