JSON RPC
Основные#
Включения генерации транспорта JSON RPC#
Для включения генерации JSON RPC достаточно добавить в настройки функцию HTTPServer и JSONRPCEnable:
// +build swipe
package example
import ( "github.com/example/app/pkg/controller" "github.com/example/app/pkg/swipe/gokit")
func swipe() { gokit.Gokit( gokit.Interface((*controller.ExampleController)(nil), "example"), gokit.HTTPServer(),
gokit.JSONRPCEnable(), )}Swipe сгенерирует методы транспорта для всех экспортируемых методов.
Swipe может генерировать документацию Openapi (Swagger) подробно про это рассказано в разделе Openapi (Swagger) документации
Настройки#
Вы можете управлять генерацией методов, например исключить метод из генерации в транспорте.
Включение генерации markdown документации#
JSONRPCDocEnable используется для включения генерации markdown документации.
// +build swipe
package example
import ( "github.com/example/app/pkg/controller" "github.com/example/app/pkg/swipe/gokit")
func swipe() { gokit.Gokit( gokit.Interface((*controller.ExampleController)(nil), "example"), gokit.HTTPServer(), gokit.JSONRPCEnable(), gokit.JSONRPCDocEnable(), gokit.JSONRPCDocOutput("./docs"), )}JSONRPCDocOutput устанавливает путь, куда сгенерируется документация относительно корня приложения.
Изменение пути JSON RPC#
JSONRPCPath меняет HTTP путь JSON RPC.
// +build swipe
package example
import ( "github.com/example/app/pkg/controller" "github.com/example/app/pkg/swipe/gokit")
func swipe() { gokit.Gokit( gokit.Interface((*controller.ExampleController)(nil), "example"), gokit.HTTPServer(), gokit.JSONRPCEnable(), gokit.JSONRPCPath("/rpc"), )}Теперь все запросы JSON RPC необходимо слать на http://hosname/rpc.