por parametros obtener enviar dominio datos actual javascript domain-name

parametros - Obtenga el nombre de dominio actual con Javascript(no la ruta, etc.)



obtener url actual javascript (11)

Dado que esta pregunta requiere un nombre de dominio, no un nombre de host, se debe dar una respuesta correcta.

window.location.hostname.split(''.'').slice(-2).join(''.'')

Esto también funciona para nombres de host como www.example.com .

Planeo comprar dos nombres de dominio para el mismo sitio. Dependiendo de qué dominio se use, planeo proporcionar datos ligeramente diferentes en la página. ¿Hay alguna forma de que detecte el nombre de dominio real desde el que se carga la página para saber a qué cambiar mi contenido?

He buscado cosas como esta pero la mayoría no funciona como quiero.

Por ejemplo cuando se usa

document.write(document.location)

en JSFiddle regresa

http://fiddle.jshell.net/_display/

es decir, el camino real o lo que sea eso.


Me imagino que debería ser tan simple como esto:

url.split("/")[2]


Puede obtenerlo fácilmente desde el objeto de ubicación en JavaScript:

Por ejemplo, la URL de esta página es:

http://www..com/questions/11401897/get-the-current-domain-name-with-javascript-not-the-path-etc

Entonces podemos obtener el dominio exacto con las siguientes propiedades del objeto de ubicación:

location.host = "www..com" location.protocol= "http:"

puedes hacer el dominio completo con:

location.protocol + "//" + location.host

Que en este ejemplo devuelve http://www..com

Además de esto, podemos obtener la URL completa y también la ruta con otras propiedades del objeto de ubicación:

location.href= "http://www..com/questions/11401897/get-the-current-domain-name-with-javascript-not-the-path-etc" location.pathname= "questions/11401897/get-the-current-domain-name-with-javascript-not-the-path-etc"


Qué tal si:

window.location.hostname

El objeto de location realidad tiene una serie de atributos que hacen referencia a diferentes partes de la URL


Si desea obtener el nombre de dominio en JavaScript, simplemente use el siguiente código:

var domain_name = document.location.hostname; alert(domain_name);

Si necesita la ruta de la URL de la página web para poder acceder a la ruta de la URL web, use este ejemplo:

var url = document.URL; alert(url);

o puedes ver esta guía


Si desea un origen de dominio completo, puede usar esto:

document.location.origin

Y si desea obtener solo el dominio, use simplemente esto:

document.location.hostname

Pero tiene otras opciones, eche un vistazo a las propiedades en:

document.location


Si no está interesado en el nombre de host (por ejemplo, www.beta.example.com ), sino en el nombre de dominio (por ejemplo, example.com ), esto funciona para nombres de host válidos:

function getDomainName(hostName) { return hostName.substring(hostName.lastIndexOf(".", hostName.lastIndexOf(".") - 1) + 1); }


Si solo está interesado en el nombre de dominio y desea ignorar el subdominio, debe analizarlo fuera del host y del hostname .

El siguiente código hace esto:

var firstDot = window.location.hostname.indexOf(''.''); var tld = ".net"; var isSubdomain = firstDot < window.location.hostname.indexOf(tld); var domain; if (isSubdomain) { domain = window.location.hostname.substring(firstDot == -1 ? 0 : firstDot + 1); } else { domain = window.location.hostname; }

http://jsfiddle.net/5U366/4/


Utilizar

document.write(document.location.hostname)​

window.location tiene un montón de propiedades. Mira MDN para ver una lista de ellos.


para mi caso, la mejor coincidencia es window.location.origin


function getDomain(url, subdomain) { subdomain = subdomain || false; url = url.replace(/(https?:////)?(www.)?/i, ''''); if (!subdomain) { url = url.split(''.''); url = url.slice(url.length - 2).join(''.''); } if (url.indexOf(''/'') !== -1) { return url.split(''/'')[0]; } return url; }

Ejemplos

La versión anterior obtenía el dominio completo (incluido el subdominio). Ahora determina el dominio correcto según la preferencia. De modo que cuando se proporciona un segundo argumento como verdadero, incluirá el subdominio; de lo contrario, solo devuelve el "dominio principal".