Данный вебсервис позволяет переписываться зарегистрированным пользователям в общем чате.
- Основной упор был направлен на backend, а frontend написан для тестирования.
- Сервер позволяет регистрировать и аутентифицировать пользователя при помощи двух сервлетов, обрабатывающих POST запросы на /signup и на /signin соответственно.
- Библиотека Jetty используются для предоставления веб-сервера и контейнера сервлетов.
- Все данные о пользователях хранятся в базе данных (H2 или MySql).
- На фронтенде отправляются HTTP-запросы при помощи Ajax для фоновой проверки корректности введенных данных.
- В качестве заглушки служит общий чат для всех пользователей. Сообщения нигде не сохраняются.
- Чтобы страница чата не обновлялась постоянно, используется вебсокет, который обрабатывает запросы на /chat.
- Страница chat.html является шаблоном, формирование которой происходит динамически при помощи FreeMarker.
- "Защита от дурака" не используется при регистрации.
Чтобы собрать сервер из исходного кода, склонируйте этот репозиторий:
git clone https://github.com/zagaynov-andrew/web-server.git
Затем перейдите в директорию web-server
и скомпилируйте сервер, используя Maven:
cd web-server && mvn compile assembly:single
📌 Для успешной сборки вам понадобятся установленные Maven и Java 11.
Для запуска сервера исполните Java-архив:
java -jar server.jar
После чего, можно проверить работоспособность на