Мне была поручена отправка данных из одного приложения в другое. Скорее всего, ресурсы находятся на разных веб-серверах. Я еще не знаю, поэтому я предполагаю, что они находятся на разных серверах. Однако они находятся в том же домене, что и следующие:
http://a.bbb.com/SevletX
http://a.bbb.com/ServletY
Мне нужно отправить некоторые конфиденциальные данные из первого ресурса во второй ресурс. Предполагая, что они находятся на двух разных серверах, RequestDispatcher не будет работать. У меня нет возможности использовать строку запроса, поскольку данные являются конфиденциальной информацией (учетные данные пользователя).
Если я установил файл cookie в первый ресурс и перенаправил, будет ли файл cookie доступным для второго ресурса? У меня нет среды, где я могу проверить это.
Если это верно, могу ли я сериализовать объект, преобразовать его в строку и затем установить строковое значение в файле cookie и получить его во втором ресурсе, десериализовать и вернуть объект?
Будет ли файл cookie быть достаточно безопасным (например, через https) для отправки конфиденциальных данных, таких как учетные данные пользователя?
Да, вы можете сделать это, пока домен тот же. Вам просто нужно явно установить путь к файлу cookie для root.
Cookie cookie = new Cookie("cookie name ", "cookie value");
cookie.setPath("/");
response.setCookie(cookie);
Теперь этот файл cookie будет доступен для всех приложений в этом домене.
предположим, что есть два приложения
теперь этот файл cookie будет доступен как для приложений app1
и для app2
.
Изменение: вы сказали, что они, вероятно, будут на двух разных веб-серверах, поэтому вы не сможете делиться куками, и вы должны попробовать подобный подход, но вместо этого хранить данные на сервере MYSQL, чтобы обе программы могли иметь доступ к сериализованному объекту.