<@U2Q1WL25B> зачем эти сложности? запрос - dto, ко...
# russian
l
@caffeine зачем эти сложности? запрос - dto, который просто сериализуется по каким-либо правилом либо в url параметры, либо в тело запроса, а респонс - та структура в которую надо распарсить, нафига RPC то?
c
Я не представляю что вы подразумеваете под RPC, от чего он вам кажется таким сложным. моя идея всего лишь в том, что с клиента на сервер надо передать: 1. имя функции (или какой либо другой идентификатор функции) 2. серелизовать аргументы. Делая так, вы сможете на сервере, например, легко через рефлексию организовать проброс вызова в конкретный объект, что бы на нем оно выполнилось с заданными аргументами. т.е. на сервере будет проще. С другой стороны на клиенте вы сможете свободно сделать некий инструмент для вызова функций на сервере, возможно даже асинхронную. Тогда на клиенте вы сможете сделать простой singelton объект с рядом ваших функций. Обратите внимание, что я не говорил о том, как в частности должна выполняться серелизация DTO на запрос исполнения метода. Можно, как вы и сказали, класть все значения в URL, если вас не беспокоят соответствующие ограничения. Можно и в тело POST запроса и т.д. Я это все вот к чему. Тот вариант, который был озвучен выше, но не мной, напоминает скорее переизобретение того что уже есть, и поиск грабель.
l
человек вообще то обычный рест пытается формализовать. что такое RPC я знаю и считаю что это очень большая избыточность вкорячивать у себя в приложении еще один свой самописный фреймворк на рефлексии, тем более что спринг большинство вышеописанное покрывает