Проектирование API в терминах RESTful

Поділитися
Вставка
  • Опубліковано 5 жов 2022
  • Доклад Алексея Романова на конференции Analyst Days EA #1. 02 октября 2022
    Ереван. Армения
    www.analystdays.eu

КОМЕНТАРІ • 16

  • @user-mm5ln4qh5q
    @user-mm5ln4qh5q Рік тому

    Лайк

  • @Vinci101
    @Vinci101 9 місяців тому +1

    я немного не понял, буду благодарен тому, кто подскажет, вот автор говорит api/v1/users/1/adress неправильно, надо api/v1/users-with-adress, потому что якобы получится сложный путь, но почему он дальше показывает api/v1/users/1/wallets.. почему для адреса плохо, а для кошельков нормально

    • @karpukolga4326
      @karpukolga4326 8 місяців тому +5

      сам по себе api/v1/users/1/adress не неправильный, если вам надо получить только адрес юзера без данных самого юзера, то вы будете пользоваться этим запросом. Но если вам надо получить и данные самого юзера, и его адрес, то без users-with-adress вам придется выполнить 2 запроса: 1. получить данные юзера вызвав api/v1/users/1; 2. получить адрес юзера вызвав pi/v1/users/1/adress. Чтобы сделать это одним запросом вы создаете users-with-adress и одним запросом api/v1/users-with-adress получаете и данные юзера и его адрес. В примере с кошельками не стояло задачи получить одновременно и данные пользователя, и данные его кошельков, а только кошельки, поэтому запрос api/v1/users/1/wallets. Если вам понадобится получить одновременно и данные пользователя, и данные его кошельков, то вероятно здесь вы по аналогии создадите users-wallets и будете в одном запросе возвращать и данные пользователя, и список всех его кошельков

    • @user-he1pk5ix1r
      @user-he1pk5ix1r 6 місяців тому

      А если кроме адреса еще много-много разных присоединенных объектов нужно получить, то какой path будет?@@karpukolga4326

    • @semenivanoff8615
      @semenivanoff8615 2 місяці тому

      Потому что леха гонит.
      И он действительно в работе идет от код ферст. Т.е они чота кодят, потом костылят. Вот этот юзер с адресс и есть типичный костыль
      Продумывать апи надо вначале

    • @radnass6568
      @radnass6568 Місяць тому

      @@karpukolga4326 У меня больше вопрос про users-with-adress, получается создается новое представление в таблице БД именно по этому запросу?

  • @lizeruser1
    @lizeruser1 Рік тому +13

    Очень очень мало объяснений почему так надо делать, а почему не надо. Объяснения в стиле "так хорошо, а так плохо", как для маленьких детей. Или "потому что с вами не захотят работать". Автор, почему ты так не уважаешь аудиторию?

    • @user-bt1yf2jk1x
      @user-bt1yf2jk1x Рік тому +1

      присоединяюсь к вопросу

    • @AK-bc4ls
      @AK-bc4ls Рік тому +3

      Во всех примерах "неправильно" приводит к тому, что в OPEN API будет сгенерирован один ресурс, где внутри будет куча описания. С таким крайне неудобно и тяжело работать, особенно в примерах, озвученных позже (генерация кода и mock postman по OPEN API).

  • @Vinci101
    @Vinci101 9 місяців тому

    и почему изменение баланса через POST а не PUT

    • @v.belova
      @v.belova 7 місяців тому +3

      Как я поняла, потому что PUT предполагает отправку образа всего обьекта, а не его части. Возможно в данном кейсе стоило заменить на PATCH

    • @radnass6568
      @radnass6568 Місяць тому

      @@v.belova Вот тут тоже согласен

  • @user-ir9fm5ek2n
    @user-ir9fm5ek2n Місяць тому

    Качество выступления крайне низкое. Нужно готовиться лучше - перепутанные слайды тому подтверждение. Лектор не ценит и не уважает свою аудиторию

    • @radnass6568
      @radnass6568 Місяць тому

      Не соглашусь с вами. Ошибается тот кто ничего не делает.
      Автор сказал, что рассказывает все поверхностно, верхнеуровнево.
      На подобных выступлениях обычно, устанавливают определенный тайминг по времени, по этому все довольно емко.
      Для подробного разбора по каждому блоку прибавляйте по часу, вот вам и будет курс.

    • @user-ir9fm5ek2n
      @user-ir9fm5ek2n Місяць тому

      @@radnass6568 ваш тезис про ёмкий рассказ не противоречит моему утверждению о низком качестве выступления. Перепутанные слайды тому подтверждение.

  • @semenivanoff8615
    @semenivanoff8615 2 місяці тому

    Начал вроде неплохо, но потом, особенно ответы :facepalm
    Что значи внутренее апи проблемы разрабов?! Это сисаналы делают, что значит не погружаются?! Еще как погружаются.
    Леха такой леха