Если один / оба ваших сервера отправляют HTTP-заголовок Server
(как обычно делает Jetty, и его можно легко настроить для этого), тогда вы можете использовать XMLHttpRequest
и посмотреть заголовки ответа.
Подробнее читайте здесь: Доступ к заголовкам HTTP веб-страницы в JavaScript
Однако я бы посоветовал вам извлечь фрагменты кода, которые изменяются между серверами, в 1 файл javascript.Например:
/* server_info.js */
locations = {
file1 : "/some/path",
file2 : "/another/path"
};
И включите этот файл как <script>
на всех своих страницах.
Затем вы можете настроить Jetty и Tomcat на использование разных версий этого файла.Должно быть достаточно легко иметь сервлет (или фильтр, или действие, или что-либо еще существующее в вашей структуре), который смотрит на тип сервера и подает нужный файл.
Если это слишком много, тогда вы могли бысделать то же самое, но просто иметь:
/* server_info.js */
server_type = "tomcat";
И изменить этот файл на сервере (вы можете легко сгенерировать этот файл в JSP или что-то подобное)
Обязательное предупреждение: Как я уверен, вы знаете, что по разным причинам иметь разные серверы в dev и prod не фантастическая идея.Как вы решите, как реализовать решение этой проблемы, как вы узнаете, что код tomcat работает?
Jetty более чем способна быть рабочим сервером, а tomcat может хорошо поработать в процессе разработки.Я подозреваю, что вы (как команда) выполняете для себя больше работы, чем на самом деле.