Sobes.tech
Назад к вопросам
Senior
2

Предложи, как можно оформить это в стиле REST — как переназвать все эти методы?

Компании, где спрашивали
МВидео/эльдорадо

Ответ от нейросети

sobes.tech AI

В REST архитектуре методы обычно соответствуют HTTP-методам и ресурсам, а не действиям с глаголами в названии. Вместо методов с названиями вроде GetUser, CreateUser и т.п. используют стандартные HTTP методы:

  • GET — для получения ресурса или списка ресурсов
  • POST — для создания нового ресурса
  • PUT — для полного обновления ресурса
  • PATCH — для частичного обновления ресурса
  • DELETE — для удаления ресурса

Например, если у вас есть сущность User, то:

  • Получить пользователя: GET /users/{id}
  • Создать пользователя: POST /users
  • Обновить пользователя: PUT /users/{id} или PATCH /users/{id}
  • Удалить пользователя: DELETE /users/{id}

Таким образом, методы в коде можно назвать просто в соответствии с HTTP методами и ресурсами, например:

func GetUser(w http.ResponseWriter, r *http.Request) {}
func CreateUser(w http.ResponseWriter, r *http.Request) {}
func UpdateUser(w http.ResponseWriter, r *http.Request) {}
func DeleteUser(w http.ResponseWriter, r *http.Request) {}

Или использовать более абстрактные имена, ориентированные на ресурс, а не на действие.