core

package
v0.2.0-alpha.11 Latest Latest
Warning

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

Go to latest
Published: Jan 5, 2025 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func OnInitialize

func OnInitialize(configFile string, envPrefix string, loadDirs []string, defaultConfigName string)

OnInitialize 设置需要读取的配置文件名、环境变量,并将其内容读取到 viper 中.

func ReadRequest

func ReadRequest[T any](c *gin.Context, rq T, bindFn BindFn, validators ...ValidatorFn[T]) error

ReadRequest 是通用的请求绑定和验证工具函数。 它会对请求进行参数绑定,初始化默认值(如果目标结构体实现了 Default 接口),并执行验证函数(可选)。

func ShouldBindJSON

func ShouldBindJSON[T any](c *gin.Context, rq T, validators ...ValidatorFn[T]) error

ShouldBindJSON 使用 JSON 格式的绑定函数绑定请求参数并执行验证。

func ShouldBindQuery

func ShouldBindQuery[T any](c *gin.Context, rq T, validators ...ValidatorFn[T]) error

ShouldBindQuery 使用 Query 格式的绑定函数绑定请求参数并执行验证。

func ShouldBindUri

func ShouldBindUri[T any](c *gin.Context, rq T, validators ...ValidatorFn[T]) error

ShouldBindUri 使用 URI 格式的绑定函数绑定请求参数并执行验证。

func WriteResponse

func WriteResponse(c *gin.Context, result any, err error)

WriteResponse 是统一的响应处理函数。 根据返回值是否发生错误,返回成功响应或错误响应。

Types

type BindFn

type BindFn func(any) error

BindFn 定义绑定函数类型,接收通用类型参数并返回错误。

type ErrorResponse

type ErrorResponse struct {
	Reason   string            `json:"reason,omitempty"`   // 错误原因,标识错误类型
	Message  string            `json:"message,omitempty"`  // 错误的具体描述信息
	Metadata map[string]string `json:"metadata,omitempty"` // 元数据,包含额外的上下文信息
}

ErrorResponse 定义错误响应结构体。 用于 API 请求中发生错误时,按照统一格式返回给客户端。

type ValidatorFn

type ValidatorFn[T any] func(context.Context, T) error

ValidatorFn 定义验证函数类型。用于对绑定的数据结构进行验证。

Jump to

Keyboard shortcuts

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