feat(openrpc): Добавил servers в method_spec#90
Conversation
df42c21 to
d3776cc
Compare
d3776cc to
b98393d
Compare
|
Привет! Спасибо за PR. Не могу понять практическую ценность добавления servers на уровне каждого метода. В JSON-RPC все методы одного entrypoint'а и так идут на один URL, а на верхнем уровне OpenRPC-схемы servers уже присутствует. Можешь описать конкретный сценарий, где это нужно? Какой клиент или инструмент это потребляет, и что не работает без этого поля? |
|
По RFC внутри метода https://spec.open-rpc.org/#method-object может быть server, по умолчанию он берёт localhost или текущий выбранный сервер. Для автоматических генераторов моделей (в том числе для UI) важно знать название сервера конкретного метода с указанием базового path. Поскольку библиотека позволяет зарегестрировать несколько APIPath с /api/v1, /api/v2, то по схеме по названию метода никак нельзя догататься, к какому именно path относится метод. Для этого и существует объект servers с указанием точного entrypoint для работы метода. В примере репозитория лежит схема работы с одним bind_entrypoint. Но чаще всего в проектах используется версионирование и разные entrypoint. При этом схема openrpc генерируется одна |
https://spec.open-rpc.org/#server-variable-object