gmrouter

package
v0.0.12 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 1, 2024 License: GPL-2.0, GPL-3.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	OK             string = "ok"
	InvalidRequest string = "Invalid request"
	MethodNotFound string = "Method not found"
	InvalidParams  string = "Invalid params"
	NoMoreParams   string = "No more params"
	InternalError  string = "Internal server error"
	ParseError     string = "Parse error"
)
View Source
const DefaultJsonRPCVersion = "2.0"

Variables

View Source
var DefaultJsonRPCCode = map[string]int{
	OK:             200,
	InvalidRequest: -32600,
	MethodNotFound: -32601,
	InvalidParams:  -32602,
	NoMoreParams:   -32602,
	InternalError:  -32603,
	ParseError:     -32700,
}
View Source
var DefaultMessage = map[int]string{
	http.StatusOK:                  "OK",
	http.StatusBadRequest:          "BadRequest",
	http.StatusInternalServerError: "Internal Server Error",
	http.StatusUnauthorized:        "Unauthorized",
}

Functions

func InitRouter

func InitRouter(basePath string, debug bool) *gin.RouterGroup

func RunningApi

func RunningApi(host string, port int64) error

Types

type JsonRPCError added in v0.0.9

type JsonRPCError struct {
	Code    int         `json:"code"`
	Message string      `json:"message"`
	Data    interface{} `json:"data,omitempty"`
}

JSON-RPC error message structure

type JsonRPCHandlerFunc added in v0.0.12

type JsonRPCHandlerFunc func(*Router, *JsonRPCRequest)

type JsonRPCRequest added in v0.0.9

type JsonRPCRequest struct {
	ID      json.RawMessage `json:"id" validate:"required"`
	Jsonrpc string          `json:"jsonrpc"`
	Method  string          `json:"method"`
	Params  json.RawMessage `json:"params"`
}

JSON-RPC request message structure

type JsonRPCResponse added in v0.0.9

type JsonRPCResponse struct {
	ID      json.RawMessage `json:"id"`
	Jsonrpc string          `json:"jsonrpc"`
	Result  interface{}     `json:"result,omitempty"`
	Error   *JsonRPCError   `json:"error,omitempty"`
}

JSON-RPC response message structure

type Response

type Response struct {
	Code    int         `json:"code"`
	Message string      `json:"message"`
	Data    interface{} `json:"data"`
}

type Router

type Router struct {
	ApiContext *gin.Context
}

func (*Router) ApiResponse

func (r *Router) ApiResponse(code int, data interface{})

func (*Router) ApiResponseBadRequest

func (r *Router) ApiResponseBadRequest()

func (*Router) ApiResponseInternalServerError

func (r *Router) ApiResponseInternalServerError()

func (*Router) ApiResponseOk

func (r *Router) ApiResponseOk(data interface{})

func (*Router) ApiResponseUnauthorized

func (r *Router) ApiResponseUnauthorized()

func (*Router) BindJSON

func (r *Router) BindJSON(obj any) error

func (*Router) BindQuery

func (r *Router) BindQuery(obj any) error

func (*Router) BindTOML

func (r *Router) BindTOML(obj any) error

func (*Router) BindXML

func (r *Router) BindXML(obj any) error

func (*Router) BindYAML

func (r *Router) BindYAML(obj any) error

func (*Router) JsonRPCResponse added in v0.0.9

func (r *Router) JsonRPCResponse(id json.RawMessage, code int, msg string, data interface{})

func (*Router) JsonRPCResponseInternalError added in v0.0.9

func (r *Router) JsonRPCResponseInternalError(id json.RawMessage, data interface{})

func (*Router) JsonRPCResponseInvalidParams added in v0.0.9

func (r *Router) JsonRPCResponseInvalidParams(id json.RawMessage, data interface{})

func (*Router) JsonRPCResponseInvalidRequest added in v0.0.9

func (r *Router) JsonRPCResponseInvalidRequest(id json.RawMessage, data interface{})

func (*Router) JsonRPCResponseMethodNotFound added in v0.0.9

func (r *Router) JsonRPCResponseMethodNotFound(id json.RawMessage, data interface{})

func (*Router) JsonRPCResponseNoMoreParams added in v0.0.11

func (r *Router) JsonRPCResponseNoMoreParams(id json.RawMessage, data interface{})

func (*Router) JsonRPCResponseOk added in v0.0.9

func (r *Router) JsonRPCResponseOk(id json.RawMessage, data interface{})

func (*Router) JsonRPCResponseParseError added in v0.0.9

func (r *Router) JsonRPCResponseParseError(id json.RawMessage, data interface{})

func (*Router) JsonRPCShouldBindJSON added in v0.0.9

func (r *Router) JsonRPCShouldBindJSON() (request *JsonRPCRequest, err error)

func (*Router) LambdaResponse

func (r *Router) LambdaResponse(code int, data interface{}) events.APIGatewayProxyResponse

func (*Router) LambdaResponseBadRequest

func (r *Router) LambdaResponseBadRequest() events.APIGatewayProxyResponse

func (*Router) LambdaResponseInternalServerError

func (r *Router) LambdaResponseInternalServerError() events.APIGatewayProxyResponse

func (*Router) LambdaResponseOk

func (r *Router) LambdaResponseOk(data interface{}) events.APIGatewayProxyResponse

func (*Router) LambdaResponseUnauthorized

func (r *Router) LambdaResponseUnauthorized() events.APIGatewayProxyResponse

func (*Router) NewJsonRPCResponseMessage added in v0.0.9

func (*Router) NewJsonRPCResponseMessage(id json.RawMessage, code int, msg string, data interface{}) JsonRPCResponse

func (*Router) NewResponseMessage

func (*Router) NewResponseMessage(code int, data interface{}) Response

func (*Router) RequestHeaderGet

func (r *Router) RequestHeaderGet(key string) string

func (*Router) RequestHeaderSet

func (r *Router) RequestHeaderSet(key string, value string)

func (*Router) ResponseMessageBadRequest

func (r *Router) ResponseMessageBadRequest(data interface{}) Response

func (*Router) ResponseMessageInternalServerError

func (r *Router) ResponseMessageInternalServerError(data interface{}) Response

func (*Router) ResponseMessageOk

func (r *Router) ResponseMessageOk(data interface{}) Response

func (*Router) ResponseMessageUnauthorized

func (r *Router) ResponseMessageUnauthorized(data interface{}) Response

func (*Router) WrapperJsonRPCHandler added in v0.0.12

func (r *Router) WrapperJsonRPCHandler(request *JsonRPCRequest, handlers ...JsonRPCHandlerFunc)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL