Documentation
¶
Index ¶
- func APIBuilder(handlers ...func(*gin.RouterGroup) *gin.RouterGroup) func(gin.IRouter, string) *gin.RouterGroup
- func AddCRUD[T any](router gin.IRouter, path string, db *gorm.DB) *gin.RouterGroup
- func AddCRUDNew[T any](router gin.IRouter, path string, db *gorm.DB, ...) *gin.RouterGroup
- func AddCRUDWithAuth[T any](router gin.IRouter, path string, db *gorm.DB, permLo, permHi int) *gin.RouterGroup
- func AddCaptchaAPI(router gin.IRouter, path string, conf1 MailConfig, conf2 CaptchaConfig, ...) *gin.RouterGroup
- func AddLoginAPI(router gin.IRouter, path string, db *gorm.DB) *gin.RouterGroup
- func AddStatic(router *gin.Engine, staticFileDir []string)
- func AddStaticFS(router *gin.Engine, fs embed.FS)
- func AuthPermission(permLo, permHi int) func(c *gin.Context, token UserClaim) error
- func CheckPasswordHash(password, hash string) error
- func ConstructQuery[T any](db *gorm.DB, searchStruct T) *gorm.DB
- func CorsMiddleware() gin.HandlerFunc
- func Create[T any](db *gorm.DB, process func(*gorm.DB, *T) *gorm.DB) func(c *gin.Context)
- func Delete[T any](db *gorm.DB) func(c *gin.Context)
- func GenerateCaptcha(length int, charset string) (string, string)
- func GenerateShortLink(url string) string
- func GenerateToken(userClaim *UserClaim) (string, error)
- func GenerateUUID() string
- func Get[T any](db *gorm.DB, process func(*gorm.DB, *gin.Context) *gorm.DB) func(c *gin.Context)
- func GetAll[T any](db *gorm.DB, process func(*gorm.DB, *gin.Context) *gorm.DB) func(c *gin.Context)
- func GetLocalIP() string
- func HandleCaptchaVerify(rdb *redis.Client) func(*gin.Context)
- func HandleLogin(db *gorm.DB) func(*gin.Context)
- func HandleMailSendCaptcha(mailConfig MailConfig, captchaConfig CaptchaConfig, rdb *redis.Client) func(*gin.Context)
- func HandleRegister(db *gorm.DB) func(*gin.Context)
- func HashedPassword(password string) string
- func JWTMiddleware(authToken func(*gin.Context, UserClaim) error) gin.HandlerFunc
- func LoadCSV(filePath string) (map[string]map[string]string, error)
- func LoadConfig[Config any]() *Config
- func LoggerMiddleware(logFile string) gin.HandlerFunc
- func NewDB(config *DatabaseConfig, migrator func(*gorm.DB) error, gormConfig *gorm.Config) *gorm.DB
- func NewLoger(logFile string) *log.Logger
- func NewRedis(config *RedisConfig) *redis.Client
- func PaginatedResults(c *gin.Context) func(*gorm.DB) *gorm.DB
- func RandPort() int
- func RefreshToken(db *gorm.DB) func(*gin.Context)
- func RunmDnsBroadcast(serviceName, serviceDomain, instanceName string, text []string, ...)
- func SaveConfig[Config any](config *Config)
- func Update[T any](db *gorm.DB) func(c *gin.Context)
- func VerifyCaptcha(id string, captcha string, db *redis.Client) bool
- type CaptchaConfig
- type Client
- type DatabaseConfig
- type MailConfig
- type Pagination
- type RedisConfig
- type ServerConfig
- type User
- type UserClaim
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func APIBuilder ¶
func APIBuilder(handlers ...func(*gin.RouterGroup) *gin.RouterGroup) func(gin.IRouter, string) *gin.RouterGroup
为Gin router 添加CRUD
func AddCRUDNew ¶
func AddCRUDWithAuth ¶
func AddCaptchaAPI ¶
func AddCaptchaAPI(router gin.IRouter, path string, conf1 MailConfig, conf2 CaptchaConfig, rdb *redis.Client) *gin.RouterGroup
func AddLoginAPI ¶
func AuthPermission ¶
验证权限 权限位于[permLo, permHi]之间则为合理
func CheckPasswordHash ¶
func ConstructQuery ¶
Recursive function to construct the query based on the fields provided in the struct
func GenerateCaptcha ¶
生成验证码 返回验证码id,验证码
func GenerateShortLink ¶
func GetLocalIP ¶
func GetLocalIP() string
func HandleCaptchaVerify ¶
func HandleMailSendCaptcha ¶
func HandleMailSendCaptcha(mailConfig MailConfig, captchaConfig CaptchaConfig, rdb *redis.Client) func(*gin.Context)
验证码服务,使用redis存储
func HashedPassword ¶
func JWTMiddleware ¶
JWT中间件 支持添加权限校验(返回error表示校验失败),以及上下文操作
func LoadCSV ¶
LoadCSV loads data from a CSV file and returns a slice of maps representing the rows.
func NewDB ¶
连接数据库 config: 数据库配置 migrator: 数据库迁移函数, 为nil则不迁移 gormConfig: gorm配置 迁移函数示例: func Migrate(db *gorm.DB) error { return db.AutoMigrate(&User{}) }
func NewRedis ¶
func NewRedis(config *RedisConfig) *redis.Client
func PaginatedResults ¶
Paginate the results
func RunmDnsBroadcast ¶
func RunmDnsBroadcast(serviceName, serviceDomain, instanceName string, text []string, servicePort int)
mDNS广播
func SaveConfig ¶ added in v0.1.1
func SaveConfig[Config any](config *Config)
TODO: SaveConfig[Config any]
Types ¶
type CaptchaConfig ¶
type Client ¶
type Client struct { ID string IP string Port int Status string Peers map[string]*Client // contains filtered or unexported fields }
func (*Client) StartDiscover ¶
func (c *Client) StartDiscover()
type DatabaseConfig ¶
type MailConfig ¶
type RedisConfig ¶
Click to show internal directories.
Click to hide internal directories.