Введение
В этом лабораторном задании мы изучим, как проверить, находятся ли два URL-адреса в одном источнике с использованием JavaScript. Мы будем использовать свойства URL.protocol и URL.host для сравнения протокола и хоста URL-адресов и определения, принадлежат ли они одному и тому же источнику или нет. Это полезный навык для веб-разработчиков, которые должны обеспечить безопасность своих веб-приложений и предотвратить атаки с использованием кросс-страничного сценария.
Проверить, находятся ли два URL-адреса в одном источнике
Для проверки того, находятся ли два URL-адреса в одном источнике:
Откройте Терминал/SSH и введите
node, чтобы начать практиковать программирование.Используйте
URL.protocolиURL.host, чтобы проверить, имеют ли оба URL-адреса один и тот же протокол и хост.
const isSameOrigin = (origin, destination) =>
origin.protocol === destination.protocol && origin.host === destination.host;
- Создайте два объекта URL с URL-адресами, которые вы хотите сравнить.
const origin = new URL("https://www.30secondsofcode.org/about");
const destination = new URL("https://www.30secondsofcode.org/contact");
- Вызовите функцию
isSameOriginс двумя объектами URL в качестве аргументов, чтобы получить логический результат.
isSameOrigin(origin, destination); // true
- Вы также можете протестировать функцию с другими URL-адресами, чтобы увидеть, находятся ли они в одном источнике или нет.
const other = new URL("https://developer.mozilla.org");
isSameOrigin(origin, other); // false
Резюме
Поздравляем! Вы завершили лабораторную работу по URL-адресам из одного источника. Вы можете практиковать в других лабораторных работах в LabEx, чтобы улучшить свои навыки.