¿Existe una manera realmente fácil de comenzar desde una URL completa:
document.location.href = "http://aaa.bbb.ccc.com/asdf/asdf/sadf.aspx?blah"
Y extraiga solo la parte del host:
aaa.bbb.ccc.com
Debe haber una función de JavaScript que haga esto de manera confiable, pero no puedo encontrarla.
javascript
hostname
Dustin Getz
fuente
fuente
window.location.origin
no está definido en IE9 (según el enlace, es IE11 +). Esta respuesta ayudó.Puede concatenar el protocolo de ubicación y el host:
Para una url, digamos
'http://stackoverflow.com/questions'
, volverá'http://stackoverflow.com'
fuente
Usar
document.location
objeto y sushost
ohostname
propiedades.fuente
La respuesta aceptada no funcionó para mí, ya que quería poder trabajar con cualquier URL arbitraria, no solo con la URL de la página actual.
Echa un vistazo al
URL
objeto :fuente
Hay dos maneras. La primera es una variante de otra respuesta aquí, pero esta cuenta para puertos no predeterminados:
Pero prefiero este método más simple (que funciona con cualquier cadena de URI):
fuente
utilizar
y para: " http://aaa.bbb.ccc.ddd.com/sadf.aspx?blah "
obtendrá: http://aaa.bbb.ccc.ddd.com/
fuente
Tratar
o
fuente
Hay otro truco que uso y que nunca vi en ninguna respuesta de StackOverflow: el uso del atributo "src" de una imagen generará la ruta base completa de su sitio. Por ejemplo :
En una URL como
http://domain.com/somesite/index.html
,root
se establecerá enhttp://domain.com/somesite/
. Esto también funciona para localhost o cualquier URL base válida.Tenga en cuenta que esto provocará una solicitud HTTP fallida en la
$
imagen ficticia. Puede usar una imagen existente en su lugar para evitar esto, con solo pequeños cambios en el código.Otra variante utiliza un enlace ficticio, sin efectos secundarios en las solicitudes HTTP:
Sin embargo, no lo probé en todos los navegadores.
fuente
Mira esto:
esto devolverá el nombre de host como
www.domain.com
y:
devolverá el nombre de dominio con puerto como
www.example.com:80
Para una referencia completa, consulte el sitio para desarrolladores de Mozilla .
fuente
Me gustaría especificar algo. Si alguien quiere obtener la URL completa con la ruta como la que necesito, puede usar:
fuente
Sé que esto es un poco tarde, pero hice una pequeña función limpia con un poco de sintaxis ES6
También podría escribirse en ES5 como
Por supuesto, IE no es compatible
Object.assign
, pero en mi línea de trabajo, eso no importa.fuente
Regex proporciona mucha más flexibilidad.
fuente