Программирование

API

Что такое API?

Слово API значит Application Programming Interface. Проще: это готовое правило разговора. Одна сторона спрашивает, другая отвечает по правилу. Базу внутри сайта погоды ты не видишь. Ты шлёшь ей адрес, а она возвращает сегодняшнюю температуру текстом или JSON. Карту, оплату и перевод спрашивают тем же путём. API — не язык. Это не Python и не JavaScript. Это путь, о котором договорились две программы. Если путь изменится, ответ на старый вопрос тоже может измениться. Поэтому смотрят документацию.

Для чего нужен API?

API приносит в твою программу готовую работу, которая стоит в другом месте. Не всё пишут с нуля.

  • Спросить погоду или курс
  • Оставить оплату другому сервису
  • Отдать свои данные сайта телефону
  • Двум программам говорить, не трогая одну базу

Что можно делать с API?

Через API посылают вопрос и читают ответ. Часто адрес — один путь, а способ — GET или POST. GET для чтения. POST чтобы послать новое. Ответ часто JSON: ключ и значение. Этот текст показывают на своей странице. API страницу не рисует и кнопку не жмёт. Дверь с ключом открыта не всем. Если ключ написать внутри страницы, смотрящий его заберёт. Ключ должен оставаться на сервере.

Сложно ли освоить API?

Прочитать погоду с одного открытого адреса легко. Трудность в правиле и ключе. Если адрес изменится на одну букву, старый вопрос сломается. Может быть предел: после числа за день ответ не приходит. Ответ бывает пустым, неверным или поздним. Нельзя ставить его на страницу без проверки. Вопрос с чужим ключом может унести деньги или данные. Не начинают, не прочитав, что документ разрешает и что запрещает.

Плюсы и ограничения

API приносит тебе готовую работу и прячет нутро. Это скорость. Цена — зависимость. Если другая сторона сменит адрес или закроет предел, твоя программа тоже встанет. Если писать всё самому, зависишь меньше, но пишешь много. Для маленького сайта готовый API — прямой путь. Ключ никогда не кладут туда, где его видят все.

Основные понятия

API — дверь. Адрес — место вопроса. JSON — письменный вид ответа.

  • Программа спрашивает программу, человек жмёт кнопку
  • GET читает, POST отправляет
  • Ответ часто бывает JSON
  • Ключ не пишут на странице, которую видят все

Короткий пример

Это простой вид адреса, чтобы прочитать одного пользователя. Ответ обычно приходит как JSON.

GET /users/12

{
  "id": 12,
  "name": "Nibras"
}

Частые вопросы

  • API — язык программирования? Нет. Это правило разговора двух программ. Python и JavaScript могут быть языками, которые его вызывают.
  • API и сайт — одно и то же? Нет. Сайт читает человек. API читает программа. Оба могут идти из одних данных.
  • Можно писать ключ на странице? Нет. Кто смотрит, тот его заберёт. Ключ должен оставаться на сервере.