Ottenere dominio in AS3
-
21-09-2019 - |
Domanda
So come ottenere l'URL della pagina, ma come posso estrarre semplicemente il dominio e il dominio da solo?
Si deve restituire lo stesso valore, con o senza www, e deve anche restituire lo stesso valore indipendentemente dal file con o senza slash, ecc.
Quindi www.domain.com
sarebbe tornato domain.com
, e domain.com/index.php
sarebbe tornato lo stesso pure.
È possibile?
Se è così, c'è un modo per farlo senza chiamare ExternalInterface.call('window.location.href.toString')
?
Grazie per l'aiuto!
Soluzione
È possibile utilizzare la classe loaderInfo, e poi tagliare verso il basso con un'espressione regolare.
Ti piace questa. Questa traccia di trovata [0] restituirà il dominio fino al .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]);
}
}
}
Altri suggerimenti
In uso Flex
Application.application.url
Ma in Flash dritto è necessario farlo in modo diverso
http://renaun.com/blog/2008/10/16/ 264 /
Poi, naturalmente, si può incidere il risultato come è necessario, dal momento che è una stringa.
var domain = "http://www.example.com/";
var pathArray = domain.split("//");
pathArray = pathArray[1].split("/");
trace(pathArray[0]); //traces www.example.com