Skip to content

Что такое jrpc-core?

jrpc-core — лёгкая Python-библиотека, реализующая спецификацию JSON-RPC 2.0 с двумя основными слоями:

СлойМодульНазначение
Сообщенияjrpc_core.messagesМодели Pydantic для запросов, ответов, уведомлений и ошибок
Диспетчерjrpc_core.dispatcherМаршрутизация входящих сообщений на обработчики на основе реестра

Принципы проектирования

  • Типобезопасность — каждая модель является BaseModel из Pydantic с явными типами полей и валидаторами.
  • Функциональность — обработка ошибок использует Result и Option из pyfplib вместо исключений.
  • Лёгкость — единственная зависимость от pydantic и pyfplib, не требует async runtime.
  • Сериализуемость — чистый обмен между Python-объектами и строками JSON.

Архитектура

Входящая строка JSON


   try_parse()

   ┌────┴────┐
   │         │
Запрос  Уведомление
   │         │
   ▼         ▼
JsonRpcDispatcher.__call__()

   ├──► поиск в реестре обработчиков


JsonRpcResponse

Дальнейшие шаги