Documentation
¶
Index ¶
- Constants
- Variables
- func CrossOrigin() gin.HandlerFunc
- func Extract[T any](ctx context.Context, key string) T
- func Handle[T any](do httpDoFunc[T], fun replyFunc, authFuncs ...AuthFunc) func(c *gin.Context)
- func RegisterInjectorFunc(name string, ...)
- func RegisterToAccessFactory[T IAccess]()
- func WsRequest[T any](do wsDoFunc[T], fun replyFunc, authFuncs ...AuthFunc) func(c *gin.Context)
- type AccessList
- func (al AccessList) Auth(need IAccess) bool
- func (al AccessList) MarshalJSON() ([]byte, error)
- func (al *AccessList) Merge(access IAccess)
- func (al *AccessList) Scan(value interface{}) error
- func (al AccessList) String() string
- func (al *AccessList) UnmarshalJSON(v []byte) error
- func (al AccessList) Value() (driver.Value, error)
- type AuthFunc
- type Code
- type ErrCode
- func (c *ErrCode) Error() string
- func (c *ErrCode) GetData() interface{}
- func (c *ErrCode) GetDetails() []string
- func (c *ErrCode) GetErr() Code
- func (c *ErrCode) GetErrCode() string
- func (c *ErrCode) GetHttpCode() int
- func (c *ErrCode) Is(e error) bool
- func (c *ErrCode) UnWrapError() string
- func (c *ErrCode) Unwrap() error
- func (c *ErrCode) WithDetails(details ...string) Code
- func (c *ErrCode) Wrap(err error) Code
- func (c *ErrCode) WrapWithDetails(err error, details ...string) Code
- type IAccess
- type RequestContext
- type Result
Constants ¶
View Source
const ( InvalidParameter = "INVALID_PARAMETER" WrongRequestMethod = "WRONG_REQUEST_METHOD" InternalError = "INTERNAL_ERROR" )
Variables ¶
View Source
var ( ErrInvalidBodyJsonParams = NewCode(http.StatusBadRequest, InvalidParameter, "invalid http json body params") //输入json参数错误 ErrInvalidBodyXMLParams = NewCode(http.StatusBadRequest, InvalidParameter, "invalid http xml body params") //输入xml参数错误 ErrInvalidQueryParams = NewCode(http.StatusBadRequest, InvalidParameter, "invalid http query params") //输入query参数错误 ErrInvalidUriParams = NewCode(http.StatusBadRequest, InvalidParameter, "invalid http uri params") //输入uri参数错误 ErrInvalidHeaderParams = NewCode(http.StatusBadRequest, InvalidParameter, "invalid http header params") //输入header参数错误 ErrInvalidFormParams = NewCode(http.StatusBadRequest, InvalidParameter, "invalid http form params") //输入form参数错误 ErrInvalidFormFileParams = NewCode(http.StatusBadRequest, InvalidParameter, "invalid http form file params") //输入form file参数错误 ErrParamsNotMatchValidate = NewCode(http.StatusBadRequest, InvalidParameter, "params not match validate") //参数不匹配验证 ErrGetHTTPBodyFailed = NewCode(http.StatusBadRequest, InvalidParameter, "get http body error") //http body解析错误 ErrWebsocketsError = NewCode(http.StatusBadRequest, WrongRequestMethod, "websockets error") //websockets错误 )
Functions ¶
func CrossOrigin ¶
func CrossOrigin() gin.HandlerFunc
func Extract ¶
Extract 提取被注入的变量,使用inject tag以及对应的注入函数来注入变量以供后续使用
func Handle ¶ added in v0.9.0
Handle 业务逻辑处理的gin中间件,通过context返回Result
func RegisterInjectorFunc ¶
Types ¶
type AccessList ¶ added in v0.7.0
type AccessList []IAccess
func (AccessList) MarshalJSON ¶ added in v0.7.0
func (al AccessList) MarshalJSON() ([]byte, error)
func (*AccessList) Scan ¶ added in v0.7.0
func (al *AccessList) Scan(value interface{}) error
Scan implements the Scanner interface.
func (AccessList) String ¶ added in v0.7.0
func (al AccessList) String() string
func (*AccessList) UnmarshalJSON ¶ added in v0.7.0
func (al *AccessList) UnmarshalJSON(v []byte) error
func (AccessList) Value ¶ added in v0.7.0
func (al AccessList) Value() (driver.Value, error)
Value implements the driver Valuer interface.
type AuthFunc ¶
type AuthFunc func(ctx *RequestContext) (skipOther bool, err Code)
type Code ¶ added in v0.9.0
type ErrCode ¶ added in v0.9.0
type RequestContext ¶ added in v0.8.0
func NewContext ¶ added in v0.8.0
func NewContext(c *gin.Context) *RequestContext
NewContext 生成新的请求及链路追踪ctx
func (*RequestContext) Deadline ¶ added in v0.8.0
func (c *RequestContext) Deadline() (deadline time.Time, ok bool)
func (*RequestContext) Done ¶ added in v0.8.0
func (c *RequestContext) Done() <-chan struct{}
func (*RequestContext) Err ¶ added in v0.8.0
func (c *RequestContext) Err() error
func (*RequestContext) Value ¶ added in v0.8.0
func (c *RequestContext) Value(key interface{}) interface{}
type Result ¶ added in v0.9.0
Click to show internal directories.
Click to hide internal directories.