Задать вопрос
@darksladen

В каком виде лучше отдавать данные клиенту?

Подскажите, как правильно возвращать данные клиенту при запросе? Пишу приложение на laravel, но думаю в других фреймворках тоже самое будет. Допустим у меня есть контроллер, в котором есть метод добавления товара в корзину.. Что он должен возвращать клиенту при запросе? Запрос на него будет приходить очевидно через ajax..

У меня пока такие варианты:
- Вернуть json со статусом и ошибками, если они есть и обработать на клиенте
- Возвращать статус ответа, отличимый от 200 (301), если добавление не удалось и обработать на клиенте
- Также можно отдавать вьюшку готовую и отображать в модалке, типа товар успешно добавлен и показать его в модалке к примеру..

Вариантов как то слишком много.. Какой из них лучше, почему и какие еще есть варианты?
Также непонятно, что должен делать такой метод при обычном запросе не через ajax.. Делать редирект на предыдущий урл или корзину например?
  • Вопрос задан
  • 702 просмотра
Подписаться 1 Оценить Комментировать
Решение пользователя Иван Филатов К ответам на вопрос (3)
NYMEZIDE
@NYMEZIDE
резюме - ivanfilatov.ru
1. Если модель переданная в API не будет изменена - то можно отдать Accepted = 202
2. Если подразумевается изменение модели, или хоть одного поля, - то нужно вернуть Ok = 200, в body положить новую модель.

Если ошибки - в любом случае возвращаем код отличный от успешного, в body ложим контракт с данными, чтобы затем обработать.
Ответ написан