Интеграция систем и/или их компонентов. API, часть 1: документация, клиентские приложения

Поделиться
HTML-код
  • Опубликовано: 23 май 2023
  • Переключайте качество видео на 1080. Так код с экрана лучше читается
    Ссылка на документацию к учебному api: sa-student.ru/sw/
    Продолжаем серию онлайн-вебинаров, посвящённых отдельным вопросам из сферы интеграции информационных систем и/или их компонентов. Следующие два вебинара будут посвящены понятию «API». Во время первого из них:
    🔘Обсудим, как может выглядеть документация на API и какую информацию должна содержать.
    🔘 Попробуем вызывать API разными методами и с разными параметрами с помощью клиентского приложения (даже двух... даже трёх): посмотрим, как API будет реагировать.
    А в следующий раз (ориентировочно - через неделю) разберёмся с серверной частью.
    По ходу дела традиционно обсудим задачи, которые решает системный аналитик в процессе проектирования собственного API и при изучении API, созданного сторонним разработчиком.
    Практическую часть все желающие смогут повторить самостоятельно с помощью приложения Postman (см. ролик, который мы недавно опубликовали в нашем RUclips-канале) или любого его аналога.
    Встречи рассчитаны на тех, кто вообще не работал с API или имеет не очень большой опыт по этой части. Но специалистам как всегда тоже будем рады.
    Можно предварительно ознакомиться:
    🔘 Формат JSON. Откуда взялся, где используется, как устроен: ruclips.net/user/liveYBOVdob4...
    🔘Основы Postman для системных аналитиков: • Инструменты системного...
    ***
    Наш telegram-канал: t.me/sys_analyst_club
    Telegram-чат: t.me/sys_analyst_chat
    Цели, задачи клуба, планы на будущее: • Встреча № 1. Клуб (вне...

Комментарии • 12

  • @user-bg6dl8sn9b
    @user-bg6dl8sn9b 6 месяцев назад +2

    Единственная проблема автора это его фантазия на фамилии. А так все четко и поделу! Спасибо большое за материал.

    • @sys_analyst_club
      @sys_analyst_club  6 месяцев назад

      Если это действительно единственная проблема, то я просто счастлив. Буду развивать фантазию :).

  • @Alf0nce1
    @Alf0nce1 Год назад +1

    Спасибо большое! Очень последовательно и понятно

  • @user-bg6dl8sn9b
    @user-bg6dl8sn9b 6 месяцев назад

    Автор подскажите пожалуйста где вы взяли токен для изменения информации студента?

    • @sys_analyst_club
      @sys_analyst_club  6 месяцев назад

      Сгенерировал какием-то генератором UID-ов, кажется просто в Notrpad++

  • @timursalakhov4482
    @timursalakhov4482 Год назад +1

    Еще хотел бы ответить на вопрос, который у меня самого возник.
    1) В каком случае при проектировании api стоит выбирать параметры адресной строки(path), например, siteru/api/student/{id}?
    2) А в каком случае стоит выбирать параметры запроса(query) по типу siteru/api/student?year=2023
    Когда речь идет об идентификации самого ресурса, то стоит использовать path-параметр
    Когда речь идет о сортировке, фильтрации, пагинации или для предоставления дополнительной необязательной информации, которая не идентифицирует сам ресурс. Или же изменить поведение запроса.

    • @sys_analyst_club
      @sys_analyst_club  Год назад

      Я для себя отвечаю так:
      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
      @sys_analyst_club  Год назад

      Прочитал еще раз, понял, что просто пересказал ваш комментарий другими словами :)

    • @timursalakhov4482
      @timursalakhov4482 Год назад

      @@sys_analyst_club Разные пересказы тоже повышают понимание) Спасибо за видео!

    • @sys_analyst_club
      @sys_analyst_club  Год назад

      @@timursalakhov4482 Тоже верно :)

  • @user-gc6xc6yl2i
    @user-gc6xc6yl2i 9 месяцев назад

    Исчерпывающе.