Ваша модель даних почала стабілізуватися, і ви можете створити публічний API для своєї веб-програми. Ви розумієте, що важко внести значні зміни у свій API після того, як він випущений, і хочете отримати якомога більше правильного результату. Нажаль не існує загальноприйнятого стандарту, який би працював у всіх випадках. В Інтернеті немає дефіциту думок про дизайн API та у […]
REST та RESTful API
REST означає Representational State Transfer, термін, запропонований Роєм Філдінгом у 2000 році. Це стиль архітектури для проектування слабозв’язаних програм у мережі, який часто використовується під час розробки веб-служб . REST не нав’язує жодних правил щодо того, як це має бути реалізовано на нижчому рівні, він лише встановлює керівні принципи проектування високого рівня та залишає нас думати про нашу власну реалізацію. Давайте почнемо зі […]
Ідемпотентність – або стійкість до постійного навантаження в однакових відповідях сервера
У контексті REST API, коли багато ідентичних запитів має той самий ефект, що й один запит, тоді такий REST API називається ідемпотентним. 1. Ідемпотентні API Коли ми розробляємо REST API, ми повинні усвідомлювати, що споживачі API можуть робити помилки. Споживачі можуть написати код клієнта таким чином, щоб до API могли надходити повторювані запити. Ці повторювані запити можуть бути ненавмисними, […]
Кешування відповіді REST API
1. Кешування Кешування — це можливість зберігати копії даних, до яких часто звертаються, у кількох місцях на шляху запит-відповідь. Коли споживач запитує представлення ресурсу, запит проходить через кеш або серію кешів (локальний кеш, кеш-проксі-кеш або зворотний проксі-сервер) до служби, на якій розміщено ресурс. Якщо будь-який із кешів уздовж шляху запиту має свіжу копію запитаного представлення, він […]
Контроль версій REST API
Зміни в API неминучі, оскільки наші знання та досвід роботи з системою вдосконалюються. Управління впливом цієї зміни може бути досить складним, якщо вона загрожує порушити існуючи інтеграцію клієнтів. Щоб керувати проблематикою оновлень, версіюйте свій API. Контроль версій допомагає нам виконувати ітерацію швидше, коли потрібні зміни ідентифікуються в API. 1. Коли треба користувати версії? Оновлювати API потрібно лише […]
Параметр “q” в HTTP заголовку “Accept”
1. Клієнти API підтримують кілька форматів REST API може повертати представлення ресурсу в багатьох форматах – точніше, MIME-типи . Клієнтська програма або браузер може запитувати будь-який підтримуваний тип MIME у заголовку HTTP Accept . Технічно Accept Header може мати кілька значень у формі значень, розділених комами. Наприклад, Accept Header із запитом text/html або application/xml формати можна встановити як: 2. Параметр “q”. Іноді клієнти можуть […]