Букмарклет для замены (в реальном времени и тестирования) URL-адресов в браузере - PullRequest
2 голосов
/ 28 сентября 2010

Раньше я использовал следующий код букмарклета для обмена URL-адресами между промежуточным сервером моего сайта и действующим сервером, чтобы я мог проверить, что промежуточные страницы были успешно переведены в живую:

промежуточный URL-адрес: www.stage.site.com / folder / page.html

Live URL: www.site.com/folder/page.html

Вот код для этой закладки;скрипт работает в обоих направлениях: от этапа к жизни и до этапа:

javascript:if(location.host=='www.site.com')(location.href='http://www.stage.site.com'+location.pathname);if(location.host=='www.stage.site.com')(location.href='http://www.site.com'+location.pathname);

Однако архитектура моего сайта изменилась (CMS), и промежуточный URL-адрес теперь сильно отличается отдействующий URL:

авторский URL: author.site.com/bucket1/bucket2/bucket3/folder/page.html

действующий URL: www.site.com/folder/page.html

Мне не удалось выяснить, как переписать этот код букмарклета, чтобы он мог обрабатывать усеченное имя пути.

1 Ответ

0 голосов
/ 18 декабря 2010

Попробуйте

javascript:if(location.host=='www.site.com')(location.href='http://author.site.com/bucket1/bucket2/bucket3'+location.pathname);if(location.host=='author.site.com')(location.href='http://www.site.com'+(location.pathname.split('/').slice(4).join('/')));

Я предполагаю, что bucket1/bucket2/bucket3/ остается постоянным, иначе вам придется найти какой-то чертовски умный способ хранения этой информации.

Вы могли бытакже выполните замену строки для location.pathname, но я просто хотел использовать split / slice / join.

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