Я не задаю вопрос, который уже задан в В чем разница между @PathParam и @ QueryParam
Этот вопрос связан с «передовым опытом» в отношении спокойного соглашения.
У меня есть вопросный ресурс со следующими полями.
[
{
"questionId":6,
"area":"TECHNICAL",
"title":"Find the index of first 1 in an infinite sorted array of 0s and 1s",
"description":"Given an infinite sorted array consisting 0s and 1s. The problem is to find the index of first 1 in that array. As the array is infinite, therefore it is guaranteed that number 1 will be present in the array.",
"state":"ACTIVE",
"difficultyLevel":"EASY",
"skills":[
{
"skillId":1,
"skillName":"ALGORITHM"
},
{
"skillId":2,
"skillName":"PROGRAMMING"
}
],
"proposedBy":"agrawalo",
"noOfTimesUsed":0,
"examples":null,
"probes":null,
"approvedBy":null,
"addedBy":null,
"dateCreated":"2018-05-16T19:29:11.113",
"dateLastUpdated":"2018-05-16T19:29:11.113"
},
{
...
},
...
]
Я выставил контроллер отдыха из своего весеннего приложения, чтобы он возвращал все вопросы, используя pathparam "/ questions"
Теперь я хочу создать URL-адреса Rest для следующих случаев (в основном URL-адреса, которые возвращают отфильтрованный набор вопросов, и URL-адреса, которые возвращают часть объекта вопроса). Например:
- вернуть только заголовки всех вопросов.
- возвращать только названия всех технических вопросов.
- возвращать вопросы с навыком в качестве алгоритма.
Я не думаю, что существует стандартное соглашение об этом. Есть? Тем не менее, я хотел бы услышать о том, как люди разрабатывают свои REST API для сценариев использования, как описано выше. Я также хотел бы услышать причину практики.
Ведет здесь ценится.