Например, у меня есть запрос который принимает, либо имя либо фамилию по разных ключах, и создает обект с разными полями. Норм ли это делать внутри 1 endpoint или лучше создать 2 роута типо. createFromFirstName createFromLastName
друзья, подкиньте репозиторий где хорошо реализовано распараллеливание на node js, в идеале обучательный репозиторий, в котором есть комменты и акцент виден, спасибо!
1 - старайся называть эндпоинты по простому. Если у тебя создается юзер, то не пиши createUser или типа того. Пиши просто user, и если эндпоинт будет как POST то это уже значит create В идеале так: GET - '.../api/user/:id' - получить юзера GET - '.../api/users' - получить всех или по выборке (параметры выборки идут как query params) PUT - '.../api/user/:id' - обновить POST - '.../api/user' - создать DELETE - '.../api/user/:id' - удалить по ид
и ненадо никаких getUser, getUsers, createUsers, update и.т.п
2 - эндпоинты не должны различаться только какой-то мелочью. Лучше принимай какой-то объект в котором есть обьязательные и не обьязательные свойства. И в зависимости от них возвращай клиенту нужный ответ
ну, правильным ответом тут будет, пожалуй, "это нигде не стандартизировано, поэтому че хочу то творю". Но большинство использует POST как создание, а PUT как обновление
Как минимум не нужно запоминать и записывать кучи эндпоинтов, когда банально к одной сущности или какой-то определенной логике есть один путь, и только разные типы запросов которые очевидно что делают
Ну, просто касательно rest, ты нигде не найдешь, что должен делать конкретный метод. Если с GET, POST, PUT, DELETE все более-менее очевидно, то для TRACE, PATCH, ... каждый придумывает свой велосипед.