Создание конечных точек отдыха для потребителей и производителей - PullRequest
0 голосов
/ 10 сентября 2018

Я пытаюсь написать остальные конечные точки для пользователя и его сервисов.Не уверен, что для приведенного ниже варианта использования он должен быть в контроллере пользователя или службы.

В приведенных ниже примерах будет найдена служба, в которой "userId" является потребителем или производителем

http://localhost/user/{userId}/consumer/services
http://localhost/user/{userId}/producer/services

или

http://localhost/service/consumer/user/{userId}
http://localhost/service/producer/user/{userId}

Первый пример имеет больше смысла для меня, какие-либо предложения и хороший подход?

Ответы [ 3 ]

0 голосов
/ 10 сентября 2018

Ни один. Пока пользователь не является субъектом действия (объектом, над которым выполняется действие), пользовательская информация - это метаданные, которые вы можете (и должны) получать из принципала аутентификации, а не из того, что поступает по URL-адресу

0 голосов
/ 12 сентября 2018

Я планирую использовать следующее, так как оно кажется более подходящим.

http://localhost/service?userId={userId}&userType={userType}

userType = ПОТРЕБИТЕЛЬ ИЛИ ПРОИЗВОДИТЕЛЬ

Приведенное выше вернет сервисы, в которых userId является ПОТРЕБИТЕЛЕМ или ПРОИЗВОДИТЕЛЕМ сервиса.

0 голосов
/ 10 сентября 2018

Если вы спросите меня, я бы порекомендовал 1-й подход. Но, сказав это, я бы направил запросы контроллерам таким образом

@RequestMapping(path = "/user")
public class UserController{
 // write code for User API
}

@RequestMapping(path = "/user/{userId}/consumer")
public class ConsumerController{
  // write code for Services API
}

@RequestMapping(path = "/user/{userId}/producer")
public class ProducerController{
 // write code for Services API
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...