Перейти к основному содержимому
Version: 3.0.0

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.