@grom111

Правильно ли я понимаю что такое API?

Всем привет. Читаю про API, но что-то совсем въехать не могу.
В моем понимании (из того что я прочитал) API это код в виде JSON'a или JS function's, который приходит как ответ от сервера сайта на который мы отправляем запрос и который помогает нам строить какие-то свои applications полагаясь на данные с API.

То есть допустим я делаю запрос, мне в ответ приходит JSON, я его могу пропарсить и работать с теми данными.

Правильно ли я понимаю?
  • Вопрос задан
  • 930 просмотров
Решения вопроса 3
Stalker_RED
@Stalker_RED
Неправильно.

API (application programming interface) - набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) или операционной системой для использования во внешних программных продуктах.
https://ru.wikipedia.org/wiki/API

Ваш пример с запросами на сервер и возвращающимся JSON-ом это очень частный случай. Главная ошибка в вашем утверждении состоит в том, что API - это не те штуки который к вам возвращаются, а те штуки которые сработали после вашего запроса.

Может быть при этом они вам вернули результат, иногда он даже бывает в формате JSON.

Анекдот
Едут по Австралии биолог, физик и математик.
И видят: на лугу пасется черная овца.
Биолог: Смотрите, в Австралии обитают черные овцы.
Физик: Нет, в Австралии обитает как минимум одна черная овца.
Математик: Нет, господа. В Австралии обитает как минимум одна
овца, и как минимум с одной стороны она черная.
Ответ написан
SagePtr
@SagePtr
Еда - это святое
Представьте себе страуса, голова которого торчит в песке, а задница - снаружи. Вот задница страуса - это и есть API, который вам этот страус предоставляет, вы можете взаимодействовать со страусом ровно так, как вам этот страус позволяет, через эту самую задницу, не выкапывая при этом самого страуса из песка.

В вашем примере вы заталкиваете страусу в попу HTTP-запрос, он его обрабатывает и через эту же попу возвращает вам результат в формате JSON. Но это только особенности работы конкретного API, в Windows API к примеру вы вызываете функции, которые возвращают вам результат (либо в регистр процессора его записывают, либо кладут в память по адресу, который вы задаёте одним из параметров функции). Ещё некоторые API возвращают ответ в формате XML, а некоторые и вовсе позволяют выбрать желаемый формат ответа.
Ответ написан
rockon404
@rockon404
Frontend Developer
Сама аббревиатура API расшифровывается как программный интерфейс приложения, интерфейс на уровне чего угодно от класса до целого сервиса. Вы наверное имели ввиду API веб-сервиса или REST API.
Как бы объяснить попонятней, API веб-сервиса это публичный или закрытый интерфейс взаимодействия, реализуемый посредством HTTP-запросов (GET, POST, PUT, PATCH, DELETE) и ответов. Ответы обычно в формате JSON.
Обработчики конкретных запросов на сервере называют эндпоинтами. Пример типичных эндпоинтов:
GET 'api/v1/products' - вернет массив товаров.
GET 'api/v1/product/:id' - вернет один товар по id
POST 'api/v1/product' - добавляем товар, отправив в теле запроса JSON с данными и получаем в ответ его же, но уже с присвоенным базой данных id или просто id.
PATCH 'api/v1/product/:id' - обновляем товар отправляя измененные поля в виде JSON и получаем измененный товар или success.
DELETE 'api/v1/product/:id' - удаляем товар, получая в ответе success.

Основные пользователи REST API это мобильные и веб приложения. Часто многие сервера и сайты используют API сторонних сервисов.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
ThePrint
@ThePrint
Сервисный инженер
Да, верно.
Ответ написан
Комментировать
razumkov2015
@razumkov2015
"Программист" https://vk.com/cgs_game
Это набор функций где то на другом сайте, приложении. Например vk.api. Их использование предусмотрено создателями.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы