Использование регулярных выражений для определения домена с использованием JavaScript - PullRequest
1 голос
/ 08 мая 2009

Если, как здесь, на работе, у нас есть тестовые, промежуточные и производственные среды, такие как:

http://test.my -happy-work.com

http://staging.my -happy-work.com

http://www.my -happy-work.com

Я пишу некоторый JavaScript, который будет перенаправлять браузер на URL-адрес, такой как:

http://[environment].my -happy-work.com / мой счастливый-видео

Мне нужно иметь возможность определить текущую среду, в которой мы находимся.

Существует вероятность того, что я буду в настоящее время на URL, например:

http://[environment].my -happy-work.com / моя счастливой траектория / мой счастливого-ресурс

Я хочу иметь возможность захватить расположение окна, но лишить его всего, кроме:

http://[environment].my -happy-work.com

А затем добавьте к этой строке + "/" + "my-happy-video".

Я не разбираюсь в регулярных выражениях, но я полагаю, что был бы способ разобрать window.location до ".com"

Мысли? Спасибо!

Ответы [ 4 ]

8 голосов
/ 08 мая 2009

Почему бы вам просто не использовать window.location.hostname? Это содержит только домен.

Вы можете комбинировать это с window.location.protocol, чтобы получить то, что вам нужно:

var domain = window.location.protocol + "//" + window.location.hostname;

Подробнее о window.location .

3 голосов
/ 10 мая 2009

Это выражение должно сработать:

^https?://([a-z0-9]+)\.([a-z0-9\-]+)\.[a-z]+
2 голосов
/ 08 мая 2009

Возможно, другим вариантом будет развертывание отдельного кода в каждой среде. Не полностью отдельный код, но, возможно, установите переменную в «ПРОИЗВОДСТВО» в производственном режиме или в «ЭТАП» в промежуточном режиме.

Это отделяет режим, в котором ваше приложение должно запускаться, от имени домена.

0 голосов
/ 25 апреля 2010
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...