Javascript получить имя домена

Location – URL текущей страницы

Объект Location связан с адресной строкой браузера, в его свойствах содержатся все компоненты URL доступные для чтения и записи.

Доступ к Location обычно осуществляется через объекты Document.location или Window.location . Если скрипт запускается из iframe (в одном домене), доступ к родительскому окну доступен через window.parent.location .

Рассмотрим какие будут значения при следующим URL:

Location.href

Вернет полный URL страницы.

console.log(window.location.href);

Результат:

http://www.example.com/pages/contats?page=1&sort=2#marker

Объекту location можно присвоить новый URL, браузер сразу перейдет на новую страницу.

window.location.href = 'https//snipp.ru';

Так же для редиректа можно использовать методы location.assign() и location.replace() . Отличие последнего в том, что пользователь не сможет использовать кнопку «назад».

window.location.assign('https//snipp.ru');
window.location.replace('https//snipp.ru');

Location.protocol

Возвращает используемый протокол, включая : .

console.log(window.location.protocol);

Результат:

Location.port

Номер порта, если его нет в URL, то ни чего не выведется.

console.log(window.location.port);

Location.host

Содержит домен и порт (если есть).

console.log(window.location.host);

Результат:

Источник

How to get the domain name from a URL in JavaScript

In this tutorial I’ll show you how to get the domain name from a URL using JavaScript. Many tutorials around the web use complicated regular expression to achieve this task but it can be done in a more straight forward way using the URL API.

Note – if you are looking to get the domain name from the current page being viewed in a browser you can simply use window.location.hostname . This tutorial is for those that need to extract a domain name from a URL that’s part of a data source.

First let’s create a string with our URL:

const url = "https://www.example.com/blog?search=hello&world";Code language: JavaScript (javascript)

If this isn’t a correctly formatted complete URL e.g example.com/blog an error is thrown.

Next create a URL object using the new URL() constructor:

let domain = (new URL(url));Code language: JavaScript (javascript)

The URL() constructor allows us to create a URL object from a string similar to the object created when using window.location . With the object created we can access the hostname property which returns a string containing the domain name:

domain = domain.hostname; console.log(domain); //www.example.comCode language: JavaScript (javascript)

If you require a naked domain the www can be removed using the replace() method.

domain = domain.hostname.replace('www.',''); console.log(domain); //example.comCode language: JavaScript (javascript)

Some additional properties you can access using the URL constructor include:

const pathname = domain.pathname; console.log(pathname); // blog const protocol = domain.protocol; console.log(protocol); // https const search = domain.search; console.log(search); // ?search=hello&worldCode language: JavaScript (javascript)

The URL API is currently supported by all modern browsers with a polyfill available for IE.

That’s all for this tutorial hopefully you found it helpful. While you’re here be sure checkout our other practical Javascript tutorials and consider signing up to our email newsletter to get updates when new tutorials are published.

Источник

Как получить url текущей страницы на JavaScript

Рассмотрим как получить URL текущей страницы в JS целиком, а также по отдельности — протокол, доменное имя сайта, GET параметры и значение после решётки (хеша). Полная информация об адресе содержится в объекте « document.location ». Доступ к отдельным элементам получаем через его свойства.

Разберём адрес: https://realadmin.ru/saytostroy/?page=4#top

Получение значений GET параметров

Javascript предоставляет специальный объект для работы с GET параметрами. С его помощью можно проверить существование параметра по названию и получить значение.

Для примера возьмем адрес:

https://realadmin.ru/saytostroy/?page=4&limit=10&sortby=desc

Извлечём значения «page» и «sortby»:

var paramsString = document.location.search; // ?page=4&limit=10&sortby=desc var searchParams = new URLSearchParams(paramsString); searchParams.get("page"); // 4 searchParams.get("sortby"); // desc

URLSearchParams — объект не доступен в устаревших версиях браузеров, например во всех версиях IE.

Для проверки существования параметров, воспользуйтесь методом «has».

searchParams.has("limit"); // true searchParams.has("sortby"); // true searchParams.has("orderby"); // false

Для перебора всех пар ключ/значение используем метод «entries».

for(var pair of searchParams.entries())

Разбор URL из строки

Кроме всех вышеприведённых примеров, можно воспользоваться объектом URL.

var addr = new URL('https://realadmin.ru/saytostroy/?page=4&limit=10&sortby=desc#top');

Интересно, что этот объект содержит свойство «searchParams» типа «URLSearchParams», который можно использовать для извлечения GET параметров.

var addr = new URL('https://realadmin.ru/saytostroy/?page=4&limit=10&sortby=desc#top'); if (addr.searchParams.has('limit')) < let limit = addr.searchParams.get('limit'); // 10 >

Обновил статью, добавил новый способ работы с параметрами через объект URLSearchParams. Пользуйтесь 🙂

а где данные https://realadmin.ru/saytostroy/?page=4#top
которые нах. между / и ?page…?
как определить адрес конкретного файла\страницы?

Может кому пригодится
append(name, value) – добавить параметр по имени,
delete(name) – удалить параметр по имени,
get(name) – получить параметр по имени,
getAll(name) – получить все параметры с одинаковым именем name (такое возможно, например: ?user=John&user=Pete),
has(name) – проверить наличие параметра по имени,
set(name, value) – задать/заменить параметр,
sort() – отсортировать параметры по имени, используется редко

Источник

Как получить доменное имя только с помощью JavaScript?

Используйте location.host и обрезайте субдомены и TLD:

 var domain = (location.host.match(/([^.]+)\.\w(?:\.\w)?$/) || [])[1] 

update: как отметил @demix, это не удается для доменов с 2 и 3 письмами. Он также не будет работать для таких доменов, как aero , jobs и десятки других.

Единственный способ — знать действительные TLD заранее, так что вот более подходящая функция:

// http://data.iana.org/TLD/tlds-alpha-by-domain.txt var TLDs = ["ac", "ad", "ae", "aero", "af", "ag", "ai", "al", "am", "an", "ao", "aq", "ar", "arpa", "as", "asia", "at", "au", "aw", "ax", "az", "ba", "bb", "bd", "be", "bf", "bg", "bh", "bi", "biz", "bj", "bm", "bn", "bo", "br", "bs", "bt", "bv", "bw", "by", "bz", "ca", "cat", "cc", "cd", "cf", "cg", "ch", "ci", "ck", "cl", "cm", "cn", "co", "com", "coop", "cr", "cu", "cv", "cx", "cy", "cz", "de", "dj", "dk", "dm", "do", "dz", "ec", "edu", "ee", "eg", "er", "es", "et", "eu", "fi", "fj", "fk", "fm", "fo", "fr", "ga", "gb", "gd", "ge", "gf", "gg", "gh", "gi", "gl", "gm", "gn", "gov", "gp", "gq", "gr", "gs", "gt", "gu", "gw", "gy", "hk", "hm", "hn", "hr", "ht", "hu", "id", "ie", "il", "im", "in", "info", "int", "io", "iq", "ir", "is", "it", "je", "jm", "jo", "jobs", "jp", "ke", "kg", "kh", "ki", "km", "kn", "kp", "kr", "kw", "ky", "kz", "la", "lb", "lc", "li", "lk", "lr", "ls", "lt", "lu", "lv", "ly", "ma", "mc", "md", "me", "mg", "mh", "mil", "mk", "ml", "mm", "mn", "mo", "mobi", "mp", "mq", "mr", "ms", "mt", "mu", "museum", "mv", "mw", "mx", "my", "mz", "na", "name", "nc", "ne", "net", "nf", "ng", "ni", "nl", "no", "np", "nr", "nu", "nz", "om", "org", "pa", "pe", "pf", "pg", "ph", "pk", "pl", "pm", "pn", "pr", "pro", "ps", "pt", "pw", "py", "qa", "re", "ro", "rs", "ru", "rw", "sa", "sb", "sc", "sd", "se", "sg", "sh", "si", "sj", "sk", "sl", "sm", "sn", "so", "sr", "st", "su", "sv", "sy", "sz", "tc", "td", "tel", "tf", "tg", "th", "tj", "tk", "tl", "tm", "tn", "to", "tp", "tr", "travel", "tt", "tv", "tw", "tz", "ua", "ug", "uk", "us", "uy", "uz", "va", "vc", "ve", "vg", "vi", "vn", "vu", "wf", "ws", "xn--0zwm56d", "xn--11b5bs3a9aj6g", "xn--3e0b707e", "xn--45brj9c", "xn--80akhbyknj4f", "xn--90a3ac", "xn--9t4b11yi5a", "xn--clchc0ea0b2g2a9gcd", "xn--deba0ad", "xn--fiqs8s", "xn--fiqz9s", "xn--fpcrj9c3d", "xn--fzc2c9e2c", "xn--g6w251d", "xn--gecrj9c", "xn--h2brj9c", "xn--hgbk6aj7f53bba", "xn--hlcj6aya9esc7a", "xn--j6w193g", "xn--jxalpdlp", "xn--kgbechtv", "xn--kprw13d", "xn--kpry57d", "xn--lgbbat1ad8j", "xn--mgbaam7a8h", "xn--mgbayh7gpa", "xn--mgbbh1a71e", "xn--mgbc0a9azcg", "xn--mgberp4a5d4ar", "xn--o3cw4h", "xn--ogbpf8fl", "xn--p1ai", "xn--pgbs0dh", "xn--s9brj9c", "xn--wgbh1c", "xn--wgbl6a", "xn--xkc2al3hye2a", "xn--xkc2dl3a5ee0h", "xn--yfro4i67o", "xn--ygbi2ammx", "xn--zckzah", "xxx", "ye", "yt", "za", "zm", "zw"].join() function getDomain(url) < var parts = url.split('.'); if (parts[0] === 'www' && parts[1] !== 'com')< parts.shift() >var ln = parts.length , i = ln , minLength = parts[parts.length-1].length , part // iterate backwards while(part = parts[--i]) < // stop when we find a non-TLD part if (i === 0 // 'asia.com' (last remaining must be the SLD) || i < ln-2 // TLDs only span 2 levels || part.length < minLength // 'www.cn.com' (valid TLD as second-level domain) || TLDs.indexOf(part) < 0 // officialy not a TLD )< return part >> > getDomain(location.host) 

Надеюсь, я не пропустил слишком много угловых дел. Это должно быть доступно в объекте location : (

Источник

JavaScript: получаем URL-адрес и компоненты (протокол, домен, порт, путь, запрос, хэш)

JavaScript: получаем URL-адрес и компоненты (протокол, домен, порт, путь, запрос, хэш)

В этом уроке мы рассмотрим, как получить URL загруженной HTML-страницы с помощью JavaScript.

Во-первых, взглянем на URL-адрес:

https://www.uproger.com:8080/category/article-title.html?searchterm=Example+title#2

Этот вымышленный URL-адрес содержит несколько компонентов: протокол, домен, порт, путь, запрос и хэш.

Компоненты URL-адресов

Наш URL-адрес состоит из разных сегментов, разделенных определенными специальными символами. Например, / , ? и # . Каждый из этих сегментов является компонентом URL-адреса:

  • Протокол – сегмент URL-адреса, который определяет, какой протокол используется для передачи данных. В нашем случае мы используем https:// , обозначающий протокол HTTPS.
  • Домен – имя хоста URL-адреса, является продолжением URL-адреса – www.uproger.com .
  • Порт – указывается после домена, которому предшествует : . В большинстве случаев порт не является общедоступным, поэтому вы редко увидите его в приложениях, но его очень часто можно заметить на этапе разработки.
  • Путь – раздел пути URL-адреса, который следует за доменным именем и портом. Он указывает один ресурс на веб-сайте, HTML-странице, изображении или каком-либо другом типе файла или каталога. В нашем примере путь – это сегмент /category/article-title.html , указывающий на файл article-title.html , который лежит на сервере.
  • Запрос – строка, которая обычно используется для включения внутреннего поиска на веб-сайте. Раздел запроса ссылается на раздел ?articleTitle=Example+title URL-адреса. Он предоставляет результат ввода поискового запроса на странице article-title.html .
  • Хэш – обычно используется для привязки, обычно это заголовок, но может быть и другой тег. В нашем случае – это #2 .

В общем, URL-адреса имеют стандартную структуру, где какие-то элементы являются обязательными, а какие-то – нет:

Теперь мы можем подробно рассмотреть, как получить доступ к текущему URL-адресу, а также к каждому из его компонентов с помощью JavaScript.

Как получить URL-адрес в JavaScript

В JavaScript объект Location содержит информацию об URL-адресе загруженной в данный момент страницы. Он принадлежит к window , хотя мы можем получить к нему прямой доступ, потому что window иерархически расположено вверху.

Чтобы получить URL-адрес, мы используем объект Location и извлекаем его свойство href :

var url = window.location.href console.log(url)
https://www.uproger.com:8080/category/article-title.html?searchterm=Example+title#

Свойство href содержит полный URL-адрес загруженного в данный момент ресурса. Если вы хотите получить определенные компоненты, а не весь URL-адрес, вы также можете использовать объект Location .

Получаем источник URL

Свойство window.location.origin выводит базовый URL-адрес (протокол + имя хоста + номер порта) URL-адреса:

console.log(window.location.origin)

Получаем протокол URL

Свойство window.location.protocol выводит протокол URL-адреса:

console.log(window.location.protocol)

Получаем URL-адрес хоста и имя хоста

Свойство window.location.host выводит URL-адрес хоста и имя хоста:

console.log(window.location.host)

Свойство window.location.hostname выводит лишь имя хоста:

console.log(window.location.hostname)

Получаем URL-адрес порта

Свойство window.location.port выводит номер порта:

console.log(window.location.port)

Получаем URL-адрес

Свойство window.location.pathname выводит раздел пути:

console.log(window.location.pathname)

Получаем URL-запрос и хэш

Свойство window.location.search выводит *раздел запроса*:

console.log(window.location.search)

Свойство window.location.hash выводит хэш:

console.log(window.location.hash)

Как вы могли понять, у JavaScript есть простой способ доступа к URL-адресу. Объект Location , доступ к которому осуществляется через интерфейс окна, позволяет получить не только URL-адрес, но и каждый его отдельный раздел.

Объект Location также может изменять URL-адрес и перенаправлять вас на новый URL-адрес.

Источник

Читайте также:  Beginners guide to java pdf
Оцените статью