Що таке API REST? Це щось говорить, щоб зупинити чи призупинити? Чи API RESTful - це ледача програма чи програма, яка ініціює стан спокою? Якщо ви взагалі зацікавлені в Інтернеті та як працюють різні технології, які стоять за ним, вам потрібно знати про API RESTful.
API - це інтерфейс програмування додатків. API може бути багатьма речами для багатьох програмістів, але по суті це посередник, який дозволяє підключати одну програму до іншої. Багато програмістів і розробників приховують свій основний код, щоб уникнути крадіжки інших у всіх їх важких роботах. Якщо вони хочуть, щоб інші програми працювали зі своєю програмою, вони також повинні зробити доступним якийсь код, щоб дозволити цю взаємодію. Тут розробляються API. Розробник може створювати API, які дозволяють іншим програмам взаємодіяти з їх створенням та надавати додаткові функції та взаємодії.
API буде записаний з певною структурою, відформатованою певним чином, щоб ресурс міг зрозуміти і не використовує занадто багато ресурсів. Багато веб-сайтів, програм і платформ використовують API. Facebook має їх, YouTube використовує їх, Google Maps їх використовує, Android та iOS користуються ними, а більшість помітних програм буде мати якийсь інтерфейс програмування. Це хороший спосіб додавання вартості та можливостей, не показуючи світові, як ваша програма складається разом.
Як використовуються API?
Наприклад, скажіть, що ви хотіли побудувати набір фільтрів для камер для телефону. Замість того, щоб створювати власне додаток для камери, ви використовуєте API камери Apple або Android для використання камери. Альтернативою було б створити абсолютно нове програмне забезпечення для камери для кожної ОС телефону, що дуже багато роботи. Натомість вам просто потрібно створити API, який може спілкуватися з існуючим програмним забезпеченням камери та надсилати ваші фільтрувальні дані до та з нього.
API також можна використовувати для доступу до системних ресурсів, інтерфейсу з іншими системами, надання функцій із додаванням вартості для браузерів і всього іншого. Якщо ви просто пам’ятаєте, що API - це фрагмент коду, який розмовляє з іншими програмами, вам слід добре.
Іншим прикладом можуть бути Карти Google. Якщо ви хочете додати на свій веб-сайт карту Google, де відображається ваше місцезнаходження, ви встановили API Карт Google із запитом HTTP GET, щоб витягнути карту з Google. Таким чином, ви отримуєте те, що хочете, без того, щоб Google нічого робити чи дозволяв доступ до внутрішніх служб своєї платформи картографування.
За допомогою API сервери Карт Google можуть задовольнити мільйони запитів за короткий проміжок часу, не перевантажуючи сервер карт. Запити API будуть правильно структуровані таким чином, щоб їх можна було задовольнити за допомогою найменших ресурсів. API RESTful гарантує, що нічого не можна записати в базу даних і не залишає слідів, залишаючи сервер карт для переходу до наступного запиту.
RESTful API
REST розшифровується як представницький державний трансфер. API RESTful використовується для передачі даних з одного ресурсу клієнту. Як приклад, пошукова система використовує тип RESTful API. Ви вводите пошуковий термін і движок запитує сервери. Служби передають відповідні дані у ваш браузер для використання. Так працює RESTful API.
Тепер ви знаєте, що API дозволяє зовнішнім програмам взаємодіяти з певними іншими програмами. API RESTful дозволяє незалежній програмі спілкуватися з цілком окремою базою даних, як у прикладі пошукової системи вище.
Що RESTful API працює, це те, що він є без стану і кешується. Без стану означає, що запит, зроблений API RESTful, не впливає на базу даних. Запит не (завжди) реєструється, нічого не зберігається в базі даних і не може записувати в базу даних. Це по суті лише для читання.
Бути кешованим означає, що клієнт API може зберігати інформацію для подальшого використання, тому йому не потрібно запитувати базу даних кожен раз.
Для Інтернету API, ймовірно, використовуватиме метод HTTP для обробки запиту. Найпоширенішими методами HTTP є GET, POST, PUT та DELETE. У прикладі пошукової системи API RESTful використовує метод HTTP для отримання даних пошукового запиту з бази даних пошукової системи для відображення результатів пошуку.
Іншим прикладом може бути пошук користувачів Twitter. Якщо ви введете URL-адресу www.twitter.com/realDonaldTrump у веб-переглядач, браузер використовуватиме HTTP для отримання даних Дональда Трампа з Twitter і відображатиме їх вам. Оскільки імена користувачів Twitter унікальні, запит поверне деталі у ваш браузер.
API RESTful - це досить елегантний спосіб обміну інформацією, не впливаючи на продуктивність сервера або віддаючи занадто багато. Цей підручник просто дряпає поверхню того, як вони працюють та інтегруються в Інтернет, але він повинен дати вам основне уявлення про те, що відбувається.