I know how to get the URL of the page, but how can I extract simply the domain and the domain alone?
It must return the same value with or witho开发者_运维百科ut www, and it must also return the same value regardless of file, with or without trailing slash, etc.
So www.domain.com
would return domain.com
, and domain.com/index.php
would return the same as well.
Is this possible?
If so, is there a way to do it without calling ExternalInterface.call('window.location.href.toString')
?
Thank you for the help!
You can use the loaderInfo class, and then trim it down with a regular expression.
Like this. This trace of found[0] will return the domain down to the .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]);
}
}
}
In Flex use
Application.application.url
But in straight Flash you need to do it differently
http://renaun.com/blog/2008/10/16/264/
Then of course you can hack up the result as you need to, since it's a string.
var domain = "http://www.example.com/";
var pathArray = domain.split("//");
pathArray = pathArray[1].split("/");
trace(pathArray[0]); //traces www.example.com
精彩评论