У меня есть приложение, которое размещено на сервере tomcat на порту 8080. и одно и то же приложение, использующее соединение websocket, которое указывает на другой сервер tomcat на порту 1234. Но когда я выполняю " document.cookie " с консоли веб-браузера, он показывает только файлы cookie с сервера websocket (2-й сервер, порт 1234), но мне нужны все файлы cookie с обоих серверов. Кто-нибудь может мне помочь?
Там никоим образом не обойти это, как то, как были разработаны куки - один сервер не может видеть другие куки.
Самый простой способ сделать это - добавить прокси-код на сервер Tomcat, который перенаправляет все запросы, отправленные на определенную конечную точку на ваш сервер на порт 1234.
Например, если вы хотите, чтобы все запросы, отправляемые на http://localhost: 8080/websockets, были перенаправлены на ваш сервер по адресу http://localhost: 1234, затем настройте Tomcat, запущенную на порту 8080 следующим образом:
ProxyPass /websockets http://localhost:1234/webapp
ProxyPassReverse /websockets http://localhost:1234/webapp
Вот документы для прокси-сервера Tomcat, они хорошие, но довольно простые:
https://tomcat.apache.org/tomcat-6.0-doc/proxy-howto.html
В производстве вы, вероятно, будете иметь выделенный прокси-сервер перед обоими (например, Apache HTTP или NGINX), и это также решит вашу проблему с cookie, учитывая, что браузер будет отправлять запросы только на один сервер/порт.