Если у меня есть URL-адрес вроде:
http://www.example.com:9090/test.html
Тогда я знаю, что www.example.com
- это имя хоста, но как вы называете http://www.example.com:9090
? Есть ли для этого какое-то устоявшееся название?
Если у меня есть URL-адрес вроде:
http://www.example.com:9090/test.html
Тогда я знаю, что www.example.com
- это имя хоста, но как вы называете http://www.example.com:9090
? Есть ли для этого какое-то устоявшееся название?
Я не знаю названия, когда у него есть схема, но имя хоста с портом вместе известно как Authority
. Хорошее объяснение here
.
Это называется происхождение.
В более общем плане, вот различные части URL-адреса в соответствии с window.location
. (Так, по крайней мере, в соответствии с тем, как это называет Javascript)
protocol://username:password@hostname:port/pathname?search#hash
-----------------------------href------------------------------
-----host----
----------- origin -------------
protocol
- схема протокола URL, включая последний ":"hostname
- доменное имяport
- номер портаpathname
- /pathname
search
- ?parameters
hash
- #fragment_identifier
username
- имя пользователя указано перед доменным именемpassword
- пароль, указанный перед доменным именемhref
- весь URLorigin
- protocol://hostname:port
host
- hostname:port
Формальное определение находится в RFC 6454, раздел 4.
window.location
, так что это имена для «контекста браузера». См. Другие ответы для других целей.
- person d4nyll; 10.10.2016
path, query and fragment
явный и правильный, хотя и не лаконичный.
- person Dima Tisnek; 13.10.2016
origin
. Что такое стандарт или RFC для всего URL-адреса? Есть такие?
- person Aónio; 15.02.2019
Сохраните протокол, вы можете ссылаться на «www.example.com» либо как имя хоста, либо - более конкретно - как «полное доменное имя».
Добавьте «9090», и лично мне было бы удобно называть его хостом, поскольку это обычно то, что вы получаете в качестве заголовка «хост» в HTTP-запросе; что-то вроде "host: www.example.com:9090". В PHP он будет храниться в переменной $_SERVER
в 'HTTP_HOST' или 'SERVER_NAME'. В JavaScript он будет доступен как document.location.host
.
Я не знаю, как вы могли бы назвать это, если бы вбросили http: // :(
В RFC 3986 подробно описаны синтаксические компоненты. Часть, на которую вы ссылаетесь, будет схемой (http
) и полномочиями (www.example.com:9090
).
windows.location
? Я запутался! А не ___ ли нам. например, назовите это protocol
или scheme
?
- person Aónio; 15.02.2019
FWIW, Uri-класс .Net framework идет от "GetLeftPart ()". Раздражает то, что у слов «схема + авторитет» нет собственного названия.
Я так не думаю. Если бы это было так, я бы ожидал, что DOM отразит это в классе window.location: https://developer.mozilla.org/En/DOM/Window.location
Вы можете прочитать о каждой части URL-адреса в Википедии. Там вы обнаружите, что http
- это имя протокола, :9090
определяет, что соединение должно быть установлено через порт # 9090 и т. Д.
Это означает, что HTTP-сервер, на котором размещен example.com, использует порт 9090
для обработки HTTP-запросов, это директива для браузера, что он должен подключаться к этому серверу через порт 9090 вместо 80, что он обычно делает, если порт не указан.