@supervtb

Как обозвать url для rest сервиса?

Добрый вечер, только начинаю разбираться с rest. Как правильно обозвать урл для действия (добавить товар клиенту, удалить товар клиента и т д).
Есть две таблицы. Клиент и товар. Связаны мэни ту мэни. Для редактирования данных клиента используется PUT /users/user, то же самое для товаров. Возник вопрос как правильно добавить урл действия добавление клиентом какого-либо товара?
Ведь если использовать users/user/?action=addproduct то это уже не рест
  • Вопрос задан
  • 184 просмотра
Решения вопроса 1
rockon404
@rockon404
Frontend Developer
Если у вас клиент это продавец. То:
GET /api/v1/{userId}/products
GET /api/v1/{userId}/product/{id}
POST /api/v1/{userId}/product
PATCH /api/v1/{userId)/product/{id}
DELETE /api/v1/{userId}/product/{id}

Если покупатель, то вам по-хорошему добавить сущность cart.
GET /api/v1/cart
POST /api/v1/cart/item
PATCH /api/v1/cart/item/{id}
DELETE /api/v1/cart/item/{id}
Тут если запросы приходят от пользователя, его id не нужен.

Заказы:
GET /api/v1/{userId}/orders
GET /api/v1/{userId}/order/{id}
POST /api/v1/{userId}/order
PATCH /api/v1/{userId)/order/{id}
DELETE /api/v1/{userId}/order/{id}

Разруливать эндпоинты через action плохая идея.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Bell Integrator Ульяновск
До 400 000 ₽
Bell Integrator Хабаровск
До 400 000 ₽
Bell Integrator Ижевск
До 400 000 ₽