Насколько я понимаю, GET должен извлечь ресурс, который этот вызов не делает
Технически, он извлекает ресурс;см. Fielding
Ключевая абстракция информации в REST - это ресурс.Любая информация, которая может быть названа, может быть ресурсом: документ или изображение, временная служба (например, «сегодняшняя погода в Лос-Анджелесе»), коллекция других ресурсов, не виртуальный объект (например, человек) и т. Д.,Другими словами, любая концепция, которая может быть целью гипертекстовой ссылки автора, должна вписываться в определение ресурса.
Ресурс, в этом случае, может не загружать объект в вашу модель данных, но это нормально.Не все ресурсы должны.
Технически, я думаю, что у вас есть «функция»;вся информация, которая вам нужна для вычисления результата, присутствует в самом URI?Это означало бы, что, если бы клиент знал, как выполнять вычисления (и имел доступные вычислительные ресурсы), тогда клиент был бы в состоянии выполнить работу за себя.
Но нет ничего плохого в наличии ресурсаэто «результат функции».
В некоторых API вы увидите предикаты (функции, которые возвращают истину / ложь), реализованные как ресурсы, которые существуют только (точнее, имеют только «представления»), еслиоценка верна.
GET /predicate?true
204 No Content
GET /predicate?false
404 Not Found
Тот факт, что вам не нужно учитывать "состояние" ресурсов для вычисления правильного ответа на запрос, является подробностью реализации , скрытой заединый интерфейс.