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

Доклад Алексея Романова на конференции Analyst Days EA #1. 02 октября 2022
Ереван. Армения
www.analystdays.eu

Пікірлер: 16

  • @user-mm5ln4qh5q
    @user-mm5ln4qh5q Жыл бұрын

    Лайк

  • @Vinci101
    @Vinci1019 ай бұрын

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

  • @karpukolga4326

    @karpukolga4326

    8 ай бұрын

    сам по себе 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

    Ай бұрын

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

  • @radnass6568

    @radnass6568

    27 күн бұрын

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

  • @lizeruser1
    @lizeruser1 Жыл бұрын

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

  • @user-bt1yf2jk1x

    @user-bt1yf2jk1x

    Жыл бұрын

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

  • @AK-bc4ls

    @AK-bc4ls

    Жыл бұрын

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

  • @Vinci101
    @Vinci1019 ай бұрын

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

  • @v.belova

    @v.belova

    7 ай бұрын

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

  • @radnass6568

    @radnass6568

    27 күн бұрын

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

  • @user-ir9fm5ek2n
    @user-ir9fm5ek2n29 күн бұрын

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

  • @radnass6568

    @radnass6568

    27 күн бұрын

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

  • @user-ir9fm5ek2n

    @user-ir9fm5ek2n

    27 күн бұрын

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

  • @semenivanoff8615
    @semenivanoff8615Ай бұрын

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