Obtención de dominio en AS3
-
21-09-2019 - |
Pregunta
Yo sé cómo conseguir la URL de la página, pero ¿cómo puedo extraer simplemente el dominio y el dominio por sí solo?
Se debe devolver el mismo valor con o sin www, y también debe devolver el mismo valor independientemente de archivo, con o sin barra final, etc.
Así www.domain.com
volvería domain.com
y domain.com/index.php
devolvería la misma también.
¿Es esto posible?
Si es así, ¿hay una manera de hacerlo sin llamar ExternalInterface.call('window.location.href.toString')
?
Gracias por la ayuda!
Solución
Puede utilizar la clase loaderInfo y, a continuación, recortar hacia abajo con una expresión regular.
Al igual que este. Este rastro de encontrado [0] devolverá el dominio hasta el .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]);
}
}
}
Otros consejos
En uso Flex
Application.application.url
Pero en flash recta que tiene que hacer de manera diferente
http://renaun.com/blog/2008/10/16/ 264 /
Entonces, por supuesto, se puede hackear el resultado que es necesario, ya que es una cadena.
var domain = "http://www.example.com/";
var pathArray = domain.split("//");
pathArray = pathArray[1].split("/");
trace(pathArray[0]); //traces www.example.com