REST = представительский государственный трансферт
ОСТАЛЬНОЕ - это набор правил, которые при соблюдении позволяют создавать распределенное приложение, имеющее определенный набор желательных ограничений.
REST - это протокол для обмена любыми (XML, JSON и т. Д.) Сообщениями, которые могут использовать HTTP для передачи этих сообщений.
Особенности:
Он не имеет состояния, что означает, что в идеале не должно поддерживаться соединение между клиентом и сервером. Клиент несет ответственность за передачу своего контекста на сервер, а затем сервер может сохранить этот контекст для обработки дальнейшего запроса клиента. Например, сеанс, поддерживаемый сервером, идентифицируется идентификатором сеанса, переданным клиентом.
Преимущества безгражданства:
- Веб-службы могут обрабатывать каждый вызов метода отдельно.
- Веб-сервисы не должны поддерживать предыдущее взаимодействие с клиентом.
- Это в свою очередь упрощает дизайн приложения.
- HTTP сам по себе является протоколом без сохранения состояния в отличие от TCP, и поэтому веб-службы RESTful без проблем работают с протоколами HTTP.
Недостатки безгражданства:
- Один дополнительный слой в форме заголовка должен быть добавлен к каждому запросу, чтобы сохранить состояние клиента.
- В целях безопасности нам нужно добавлять информацию заголовка к каждому запросу.
Методы HTTP, поддерживаемые REST:
GET: / string / someotherstring Он идемпотентен и в идеале должен возвращать одинаковые результаты при каждом вызове
PUT: так же, как GET. Идемпотент и используется для обновления ресурсов.
POST: должен содержать url и body. Используется для создания ресурсов. Несколько вызовов в идеале должны возвращать разные результаты и создавать несколько продуктов.
УДАЛИТЬ: Используется для удаления ресурсов на сервере.
ГЛАВА:
Метод HEAD идентичен GET, за исключением того, что сервер НЕ ДОЛЖЕН возвращать тело сообщения в ответе. Мета-информация, содержащаяся в заголовках HTTP в ответ на запрос HEAD, ДОЛЖНА быть идентична информации, отправленной в ответ на запрос GET.
ПАРАМЕТРЫ:
Этот метод позволяет клиенту определять параметры и / или требования, связанные с ресурсом, или возможности сервера, не предполагая действия ресурса или не инициируя извлечение ресурса.
HTTP-ответы
Пойди сюда для всех ответов .
Вот несколько важных: 200 - OK 3XX - Требуется дополнительная информация от клиента и перенаправление URL 400 - Неверный запрос
401 - Несанкционированный доступ к
403 - Запрещено
Запрос был действителен, но сервер отклонил действие. Пользователь может не иметь необходимых разрешений для ресурса или ему может потребоваться какая-либо учетная запись.
404 - Не найдено
Запрошенный ресурс не найден, но может быть доступен в будущем. Последующие запросы клиента допустимы.
405 - Метод не разрешен Метод запроса не поддерживается для запрошенного ресурса; например, запрос GET для формы, которая требует представления данных через POST, или запрос PUT для ресурса, доступного только для чтения.
404 - Запрос не найден
500 - Внутренняя
ошибка сервера 502 - Ошибка неверного шлюза