Назад к вопросам
Senior
1
Нормально ли, что для добавления друзей и просмотра друзей пользователя используется один и тот же endpoint, но с разными методами? Как это будет работать?
Компании, где спрашивали
МВидео/эльдорадо
Ответ от нейросети
sobes.tech AI
Да, это нормальная практика в REST API — использовать один и тот же endpoint с разными HTTP-методами для разных операций. Например, для ресурса /friends:
GET /friends— получить список друзей пользователя.POST /friends— добавить нового друга.
Такой подход соответствует принципам REST, где метод определяет действие, а URL — ресурс. Сервер различает запросы по методу и выполняет соответствующую логику. Это упрощает структуру API и делает её более предсказуемой.
Пример на Go с использованием net/http:
func friendsHandler(w http.ResponseWriter, r *http.Request) {
switch r.Method {
case http.MethodGet:
// Логика получения друзей
w.Write([]byte("Список друзей"))
case http.MethodPost:
// Логика добавления друга
w.Write([]byte("Друг добавлен"))
default:
w.WriteHeader(http.StatusMethodNotAllowed)
}
}
func main() {
http.HandleFunc("/friends", friendsHandler)
http.ListenAndServe(":8080", nil)
}