Что такое КОА Js?

Koa.js — это платформа веб-приложений Node.js, которая предлагает широкий спектр функций как для онлайн-приложений, так и для мобильных приложений. Это фреймворк с открытым исходным кодом, созданный теми же людьми, которые создали Express.js, самый популярный веб-фреймворк для узлов.

Приложение Koa представляет собой стек-подобный объект, который содержит массив функций генератора промежуточного программного обеспечения, которые создаются и выполняются по запросу. Многие другие системы промежуточного программного обеспечения, такие как Ruby’s Rack, Connect и другие, сравнимы с Koa. Однако предоставление высокоуровневого «сахара» на обычно низкоуровневом промежуточном программном уровне было важным архитектурным решением. Это повышает совместимость и надежность, а также делает разработку промежуточного программного обеспечения более приятной.

Что такое Restful веб-сервисы?

Restful Web Services, построенные на архитектуре REST, представляют собой легковесную, поддерживаемую и масштабируемую службу. Веб-службы Restful предоставляют API из вашего приложения вызывающему клиенту безопасным, стандартизированным способом без сохранения состояния. Служба Restful позволяет вызывающему клиенту выполнять предустановленные действия. HTTP — это основной протокол, лежащий в основе REST.

Глаголы HTTP

Глаголы HTTP составляют большую часть нашего требования к «унифицированному интерфейсу», поскольку они являются действием, эквивалентным ресурсу на основе существительного. POST, GET, PUT, PATCH и DELETE являются наиболее часто используемыми HTTP-глаголами (или методами, как они официально называются). Они представляют собой операции создания, чтения, обновления и удаления (или CRUD). Есть также несколько дополнительных глаголов, хотя они используются реже. OPTIONS и HEAD используются чаще, чем другие менее частые способы.

Ограничения

  1. Единый интерфейс.URI относятся к отдельным службам, основанным на стандарте http. Запросы HTTP состоят из заголовка, тела и параметров запроса, тогда как ответы URI состоят из заголовка, состояния и тела. глаголы в HTTP (GET, PUT, POST, DELETE)
  2. Без сохранения состояния. Rest API — это то, чем является без сохранения состояния. Им не будет позволено нести какое-либо государство. На сервере нет состояния клиента. Каждый запрос должен быть автономным. Это означает, что все необходимое для запроса должно быть включено в запрос.
  3. Кэшируемость. В REST API однородность и отсутствие состояния регулируют кэширование. Кэширование возможно для всех get API.
  4. Клиент-сервер: клиенты взаимодействуют с серверами, не понимая, где они находятся и что делают. Чтобы сделать вызов, вам нужен только URI или URL, а коммуникационной платформой является стек HTTP. HTTP — это протокол, который находится поверх TCP. Он решает практически все проблемы проектирования клиент-сервера, такие как потеря пакетов и упорядочение на основе стека.
  5. Многоуровневая система. Многоуровневая система подчеркивает сложность API, который может состоять из множества API. Исключительная масштабируемость Запрос в системе микрослужб может заключаться в сборе данных из множества служб, их агрегировании и возврате.

Код по запросу

  1. Дополнительное ограничение
  2. Сервер может позволить себе передать часть логики клиенту.
  3. Js передается клиенту для выполнения.

Соответствие ограничениям REST

Производительность

Масштабируемость

Простота: единый интерфейс

Изменяемость: изменение компонентов во время работы.

Видимость: связь между агентами.

Переносимость: компоненты за счет переноса кода программы с данными

Надежность

HTTP-коды

200: OK

201: создано

202: принято

204: нет контента

301: перемещен навсегда

302: найдено

304: не изменено

400: неверный запрос

401: неавторизованный

403: Запрещено

404: не найдено

405: метод не разрешен

409: конфликт

412: предварительное условие не выполнено

500: внутренняя ошибка сервера

502: неверный шлюз

503: служба недоступна

Подробнее о Koa Js и услугах отдыха будет обсуждаться в следующих блогах