Можно ли всегда использовать только GET и POST? или все методы надо использовать?
@alena_okotchik17 күн бұрын
@@AlexCujba-ye1bv crud тот же можно реализовать, но используя все методы http более семантически правильно и эффективнее)
@ВладимирИванов-е8к15 күн бұрын
Объясните мне как тупому, почему запрос DELETE обязан быть идемпотентным?
@alena_okotchik15 күн бұрын
как минимум чтобы повторные вызовы не вызывали ошибок и всегда приводили к одному и тому же результату => упрощена логика обработки ошибок => чуть больше надежности при сбоях
@ВладимирИванов-е8к14 күн бұрын
@@alena_okotchik а как понять, что ресурс был удалён, и что нужно вернуть 204, а не 404? (мягкое удаление не предлагать)
@alena_okotchik14 күн бұрын
@@ВладимирИванов-е8к как понять кому? Бэк при удалении возвращает 204 и каждый повторный запрос будет его возвращать
@ВладимирИванов-е8к14 күн бұрын
@@alena_okotchik при повторном запросе бэк не сможет определить: ресурс был удалён (204) или ресурса по этому адресу никогда не было (404). В простейшей реализации это будет выглядеть как "верни 204 в любой непонятной ситуации", к чему я могу придумать кучу кейсов с труднолокализуемыми багами. Да и вообще это выглядит скорее как маскировка ошибок, чем оптимизация. Фронту (если он хлебушек) ничего не мешает проигнорировать статус ответа (в таком случае респонс на DELETE ему вообще не нужен) или написать try-catch, а если юзать токен идемпотентности (что имплементировать гораздо проще, чем мягкое удаление или лог операций), то сетевые сбои и восстановление после них вообще перестанут быть проблемой.