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 читает программа. Оба могут идти из одних данных.
- Можно писать ключ на странице? Нет. Кто смотрит, тот его заберёт. Ключ должен оставаться на сервере.