/web-server

Вебсервис, позволяющий переписываться зарегистрированным пользователям в общем чате.

Primary LanguageJava

ℹ️ About

Данный вебсервис позволяет переписываться зарегистрированным пользователям в общем чате.

  • Основной упор был направлен на backend, а frontend написан для тестирования.
  • Сервер позволяет регистрировать и аутентифицировать пользователя при помощи двух сервлетов, обрабатывающих POST запросы на /signup и на /signin соответственно.
  • Библиотека Jetty используются для предоставления веб-сервера и контейнера сервлетов.
  • Все данные о пользователях хранятся в базе данных (H2 или MySql).
  • На фронтенде отправляются HTTP-запросы при помощи Ajax для фоновой проверки корректности введенных данных.
  • В качестве заглушки служит общий чат для всех пользователей. Сообщения нигде не сохраняются.
  • Чтобы страница чата не обновлялась постоянно, используется вебсокет, который обрабатывает запросы на /chat.
  • Страница chat.html является шаблоном, формирование которой происходит динамически при помощи FreeMarker.
  • "Защита от дурака" не используется при регистрации.

screen-png

🔨 Build

Чтобы собрать сервер из исходного кода, склонируйте этот репозиторий:

git clone https://github.com/zagaynov-andrew/web-server.git

Затем перейдите в директорию web-server и скомпилируйте сервер, используя Maven:

cd web-server && mvn compile assembly:single

📌 Для успешной сборки вам понадобятся установленные Maven и Java 11.

🚀 Launch

Для запуска сервера исполните Java-архив:

java -jar server.jar

После чего, можно проверить работоспособность на

localhost:8080