Интеграция систем и/или их компонентов. API, часть 1: документация, клиентские приложения
Вставка
- Опубліковано 23 тра 2023
- Переключайте качество видео на 1080. Так код с экрана лучше читается
Ссылка на документацию к учебному api: sa-student.ru/sw/
Продолжаем серию онлайн-вебинаров, посвящённых отдельным вопросам из сферы интеграции информационных систем и/или их компонентов. Следующие два вебинара будут посвящены понятию «API». Во время первого из них:
🔘Обсудим, как может выглядеть документация на API и какую информацию должна содержать.
🔘 Попробуем вызывать API разными методами и с разными параметрами с помощью клиентского приложения (даже двух... даже трёх): посмотрим, как API будет реагировать.
А в следующий раз (ориентировочно - через неделю) разберёмся с серверной частью.
По ходу дела традиционно обсудим задачи, которые решает системный аналитик в процессе проектирования собственного API и при изучении API, созданного сторонним разработчиком.
Практическую часть все желающие смогут повторить самостоятельно с помощью приложения Postman (см. ролик, который мы недавно опубликовали в нашем UA-cam-канале) или любого его аналога.
Встречи рассчитаны на тех, кто вообще не работал с API или имеет не очень большой опыт по этой части. Но специалистам как всегда тоже будем рады.
Можно предварительно ознакомиться:
🔘 Формат JSON. Откуда взялся, где используется, как устроен: ua-cam.com/users/liveYBOVdob4...
🔘Основы Postman для системных аналитиков: • Инструменты системного...
***
Наш telegram-канал: t.me/sys_analyst_club
Telegram-чат: t.me/sys_analyst_chat
Цели, задачи клуба, планы на будущее: • Встреча № 1. Клуб (вне...
Единственная проблема автора это его фантазия на фамилии. А так все четко и поделу! Спасибо большое за материал.
Если это действительно единственная проблема, то я просто счастлив. Буду развивать фантазию :).
Спасибо большое! Очень последовательно и понятно
И вам большое спасибо! :)
Автор подскажите пожалуйста где вы взяли токен для изменения информации студента?
Сгенерировал какием-то генератором UID-ов, кажется просто в Notrpad++
Еще хотел бы ответить на вопрос, который у меня самого возник.
1) В каком случае при проектировании api стоит выбирать параметры адресной строки(path), например, siteru/api/student/{id}?
2) А в каком случае стоит выбирать параметры запроса(query) по типу siteru/api/student?year=2023
Когда речь идет об идентификации самого ресурса, то стоит использовать path-параметр
Когда речь идет о сортировке, фильтрации, пагинации или для предоставления дополнительной необязательной информации, которая не идентифицирует сам ресурс. Или же изменить поведение запроса.
Я для себя отвечаю так:
1) Вариант передачи параметра через path хорош, когда мы обращаемся к конкретному экземпляру объекта по его id. Т.е. students\ - это endpoint к выборке данных, students\{id} - к конкретному экземпляру (или в терминах БД - к конкретной записи).
2) Параметры типа query удобны, если надо ограничить выборку по одному или нескольким критериям. Например: students?year=2023&status=entered&groupCode=12345 (хотим получить список студентов определенной группы, поступивших в 2023 году и имеющих статус "поступил").
При этом очеивдно, что вместо параметра path можно легко передавать id через query-параметр: students?id=123. Но это чуть-чуть не по-рестовски, по-моему :)
Прочитал еще раз, понял, что просто пересказал ваш комментарий другими словами :)
@@sys_analyst_club Разные пересказы тоже повышают понимание) Спасибо за видео!
@@timursalakhov4482 Тоже верно :)
Исчерпывающе.