Что такое КОА 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 используются чаще, чем другие менее частые способы.
Ограничения
- Единый интерфейс.URI относятся к отдельным службам, основанным на стандарте http. Запросы HTTP состоят из заголовка, тела и параметров запроса, тогда как ответы URI состоят из заголовка, состояния и тела. глаголы в HTTP (GET, PUT, POST, DELETE)
- Без сохранения состояния. Rest API — это то, чем является без сохранения состояния. Им не будет позволено нести какое-либо государство. На сервере нет состояния клиента. Каждый запрос должен быть автономным. Это означает, что все необходимое для запроса должно быть включено в запрос.
- Кэшируемость. В REST API однородность и отсутствие состояния регулируют кэширование. Кэширование возможно для всех get API.
- Клиент-сервер: клиенты взаимодействуют с серверами, не понимая, где они находятся и что делают. Чтобы сделать вызов, вам нужен только URI или URL, а коммуникационной платформой является стек HTTP. HTTP — это протокол, который находится поверх TCP. Он решает практически все проблемы проектирования клиент-сервера, такие как потеря пакетов и упорядочение на основе стека.
- Многоуровневая система. Многоуровневая система подчеркивает сложность API, который может состоять из множества API. Исключительная масштабируемость Запрос в системе микрослужб может заключаться в сборе данных из множества служб, их агрегировании и возврате.
Код по запросу
- Дополнительное ограничение
- Сервер может позволить себе передать часть логики клиенту.
- Js передается клиенту для выполнения.
Соответствие ограничениям REST
Производительность
Масштабируемость
Простота: единый интерфейс
Изменяемость: изменение компонентов во время работы.
Видимость: связь между агентами.
Переносимость: компоненты за счет переноса кода программы с данными
Надежность
HTTP-коды
200: OK
201: создано
202: принято
204: нет контента
301: перемещен навсегда
302: найдено
304: не изменено
400: неверный запрос
401: неавторизованный
403: Запрещено
404: не найдено
405: метод не разрешен
409: конфликт
412: предварительное условие не выполнено
500: внутренняя ошибка сервера
502: неверный шлюз
503: служба недоступна
Подробнее о Koa Js и услугах отдыха будет обсуждаться в следующих блогах