Курс обучения программированию на Java | Сайт проекта

< Курс обучения программированию на Java >

Вернуться к содержанию курса

Протокол HTTP и основы REST-сервисов

Основные материалы

  1. Обзор всех инструментов разработчика Chrome DevTools
  2. Презентация HTTP
  3. Habr - Простым языком об HTTP
  4. Habr - Архитектура REST
  5. Habr - Шпаргалка Java программиста 8. Библиотеки для работы с Json (Gson, Fastjson, LoganSquare, Jackson, JsonPath и другие)

Дополнительные материалы

  1. Документация от mozilla
  2. Baeldung - Jackson

Практическая работа

Репозиторий с шаблоном практической работы

Вопросы для самоконтроля

  1. Версии HTTP?
  2. Что означают концепции клиент-сервер и запрос-ответ в рамках HTTP? Какие типы ресурсов можно передавать по HTTP?
  3. Какие существуют способы передачи параметров в HTTP-запросе? Как кодируются кириллические символы при передаче параметров?
  4. Из чего состоит HTTP-запрос?
  5. Из чего состоит HTTP-ответ?
  6. Что такое HTTP методы? Какие из них наиболее часто используемые? Что такое идемпотентность?
  7. Что такое коды ответа? На какие группы они делятся?
  8. Что такое HTTP-headers? Что такое Content Negotiation?
  9. Что такое HTTP-Cookie? Из чего они состоят? Для чего используются? Как передать и получить Cookie? Какие существуют виды Cookie?
  10. Какие существуют проблемы с безопасностью Cookie? Как их можно решить? Для чего используется атрибут HttpOnly и Secure?
  11. Что такое HTTP-Cache? Как установить время жизни кэша? Какие существуют способы настройки кэша? Что такое Cache-Control: no-cache/no-store?
  12. Для чего используется HTTPS? Что шифрует HTTPS при передаче данных?