Должен ли я возвращать опубликованные данные из серверной части после того, как они были опубликованы? УГЛОВОЙ + УЗЕЛ

У меня прямой вопрос. Внутри моего приложения Angular, NodeJS и MySQL у меня есть ФОРМА, в которой пользователь добавляет своих рабочих, после добавления каждого работника информация отправляется в серверную часть, и пользователь может видеть предварительный просмотр всей информации, которую он только что опубликовал, плюс он может удалить каждого работника из этого предварительного просмотра. Теперь у меня есть два варианта

ВАРИАНТ ПЕРВЫЙ (в настоящее время используется) — получить только идентификатор созданного воркера из серверной части и отправить его с созданными значениями в массив воркеров.
таким образом я избегаю использования сложного запроса SELECT, который должен возвращать данные из 3 разных таблиц внутри маршрута POST. НО я не отображаю фактические данные из бэкэнда.

ВАРИАНТ ВТОРОЙ — возвращать все значения после каждого сообщения и помещать возвращенные значения в рабочий массив для предварительного просмотра. Таким образом, я отображаю фактические данные с сервера, НО я должен вернуть данные из метода POST и использовать сложный запрос, как я упоминал в первом варианте.

Любые предложения о том, что является наилучшей практикой, будут оценены
Я не добавляю никакого кода, потому что это не имеет значения.

Если форма данных такая же, как вы получили бы с сервера, за вычетом идентификатора, нет причин возвращать результат вызова, поскольку у вас уже есть все данные на стороне клиента, IMO.

Brandon 11.02.2019 22:42
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
1
28
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

вы должны вернуть опубликованные данные вместе с кодом состояния 201, это одно из многих правил REST API, я рекомендую вам взглянуть на эта статья, в нем объясняются рекомендации по разработке REST API.

Ответ принят как подходящий

Нет, вы не должны возвращать данные после запроса POST. По крайней мере, согласно стандарт HTTP. Вы должны вернуть только URL-адрес только что созданного ресурса в файле Заголовок местоположения.

Допустим, вы создали новый User, используя POST /users. Затем в ответе у вас должен быть код состояния 201 (создано), а в заголовке местоположения URL-адрес ресурса. Например, /users/1234, где часть 1234 — это идентификатор пользователя.

Другие вопросы по теме