Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CORS ¶
type CORS struct { Mode string `mapstructure:"mode" json:"mode" yaml:"mode"` Whitelist []CORSWhitelist `mapstructure:"whitelist" json:"whitelist" yaml:"whitelist"` }
type CORSWhitelist ¶
type CORSWhitelist struct { AllowOrigin string `mapstructure:"allow-origin" json:"allow-origin" yaml:"allow-origin"` AllowMethods string `mapstructure:"allow-methods" json:"allow-methods" yaml:"allow-methods"` AllowHeaders string `mapstructure:"allow-headers" json:"allow-headers" yaml:"allow-headers"` ExposeHeaders string `mapstructure:"expose-headers" json:"expose-headers" yaml:"expose-headers"` AllowCredentials bool `mapstructure:"allow-credentials" json:"allow-credentials" yaml:"allow-credentials"` }
type Captcha ¶
type Captcha struct { KeyLong int `mapstructure:"key-long" json:"key-long" yaml:"key-long"` // 验证码长度 ImgWidth int `mapstructure:"img-width" json:"img-width" yaml:"img-width"` // 验证码宽度 ImgHeight int `mapstructure:"img-height" json:"img-height" yaml:"img-height"` // 验证码高度 OpenCaptcha int `mapstructure:"open-captcha" json:"open-captcha" yaml:"open-captcha"` // 防爆破验证码开启此数,0代表每次登录都需要验证码,其他数字代表错误密码此数,如3代表错误三次后出现验证码 OpenCaptchaTimeOut int `mapstructure:"open-captcha-timeout" json:"open-captcha-timeout" yaml:"open-captcha-timeout"` // 防爆破验证码超时时间,单位:s(秒) }
type DsnProvider ¶
type DsnProvider interface {
Dsn() string
}
type Email ¶
type Email struct { To string `mapstructure:"to" json:"to" yaml:"to"` // 收件人:多个以英文逗号分隔 Port int `mapstructure:"port" json:"port" yaml:"port"` // 端口 From string `mapstructure:"from" json:"from" yaml:"from"` // 收件人 Host string `mapstructure:"host" json:"host" yaml:"host"` // 服务器地址 IsSSL bool `mapstructure:"is-ssl" json:"is-ssl" yaml:"is-ssl"` // 是否SSL Secret string `mapstructure:"secret" json:"secret" yaml:"secret"` // 密钥 Nickname string `mapstructure:"nickname" json:"nickname" yaml:"nickname"` // 昵称 }
type GeneralDB ¶
type GeneralDB struct { Path string `mapstructure:"path" json:"path" yaml:"path"` // 服务器地址:端口 Port string `mapstructure:"port" json:"port" yaml:"port"` //:端口 Config string `mapstructure:"config" json:"config" yaml:"config"` // 高级配置 Dbname string `mapstructure:"db-name" json:"db-name" yaml:"db-name"` // 数据库名 Username string `mapstructure:"username" json:"username" yaml:"username"` // 数据库用户名 Password string `mapstructure:"password" json:"password" yaml:"password"` // 数据库密码 Prefix string `mapstructure:"prefix" json:"prefix" yaml:"prefix"` //全局表前缀,单独定义TableName则不生效 Singular bool `mapstructure:"singular" json:"singular" yaml:"singular"` //是否开启全局禁用复数,true表示开启 MaxIdleConns int `mapstructure:"max-idle-conns" json:"max-idle-conns" yaml:"max-idle-conns"` // 空闲中的最大连接数 MaxOpenConns int `mapstructure:"max-open-conns" json:"max-open-conns" yaml:"max-open-conns"` // 打开到数据库的最大连接数 LogMode string `mapstructure:"log-mode" json:"log-mode" yaml:"log-mode"` // 是否开启Gorm全局日志 LogZap bool `mapstructure:"log-zap" json:"log-zap" yaml:"log-zap"` // 是否通过zap写入日志文件 }
GeneralDB 也被 Pgsql 和 Mysql 原样使用
type JWT ¶
type JWT struct { SigningKey string `mapstructure:"signing-key" json:"signing-key" yaml:"signing-key"` // jwt签名 ExpiresTime string `mapstructure:"expires-time" json:"expires-time" yaml:"expires-time"` // 过期时间 BufferTime string `mapstructure:"buffer-time" json:"buffer-time" yaml:"buffer-time"` // 缓冲时间 Issuer string `mapstructure:"issuer" json:"issuer" yaml:"issuer"` // 签发者 }
type Mysql ¶
type Mysql struct {
GeneralDB `yaml:",inline" mapstructure:",squash"`
}
func (*Mysql) GetLogMode ¶
type Server ¶
type Server struct { JWT JWT `mapstructure:"jwt" json:"jwt" yaml:"jwt"` Zap Zap `mapstructure:"zap" json:"zap" yaml:"zap"` Redis Redis `mapstructure:"redis" json:"redis" yaml:"redis"` Email Email `mapstructure:"email" json:"email" yaml:"email"` System System `mapstructure:"system" json:"system" yaml:"system"` Captcha Captcha `mapstructure:"captcha" json:"captcha" yaml:"captcha"` Mysql Mysql `mapstructure:"mysql" json:"mysql" yaml:"mysql"` Local Local `mapstructure:"local" json:"local" yaml:"local"` Excel Excel `mapstructure:"excel" json:"excel" yaml:"excel"` Timer Timer `mapstructure:"timer" json:"timer" yaml:"timer"` Cors CORS `mapstructure:"cors" json:"cors" yaml:"cors"` }
type SpecializedDB ¶
type System ¶
type System struct { Env string `mapstructure:"env" json:"env" yaml:"env"` // 环境值 Addr int `mapstructure:"addr" json:"addr" yaml:"addr"` // 端口值 DbType string `mapstructure:"db-type" json:"db-type" yaml:"db-type"` // 数据库类型:mysql(默认)|sqlite|sqlserver|postgresql OssType string `mapstructure:"oss-type" json:"oss-type" yaml:"oss-type"` // Oss类型 UseMultipoint bool `mapstructure:"use-multipoint" json:"use-multipoint" yaml:"use-multipoint"` // 多点登录拦截 UseRedis bool `mapstructure:"use-redis" json:"use-redis" yaml:"use-redis"` // 使用redis LimitCountIP int `mapstructure:"iplimit-count" json:"iplimit-count" yaml:"iplimit-count"` LimitTimeIP int `mapstructure:"iplimit-time" json:"iplimit-time" yaml:"iplimit-time"` RouterPrefix string `mapstructure:"router-prefix" json:"router-prefix" yaml:"router-prefix"` }
type Timer ¶
type Timer struct { Start bool `mapstructure:"start" json:"start" yaml:"start"` // 是否启用 Spec string `mapstructure:"spec" json:"spec" yaml:"spec"` // CRON表达式 WithSeconds bool `mapstructure:"with_seconds" json:"with_seconds" yaml:"with_seconds"` // 是否精确到秒 Detail []Detail `mapstructure:"detail" json:"detail" yaml:"detail"` }
type Zap ¶
type Zap struct { Level string `mapstructure:"level" json:"level" yaml:"level"` // 级别 Prefix string `mapstructure:"prefix" json:"prefix" yaml:"prefix"` // 日志前缀 Format string `mapstructure:"format" json:"format" yaml:"format"` // 输出 Director string `mapstructure:"director" json:"director" yaml:"director"` // 日志文件夹 EncodeLevel string `mapstructure:"encode-level" json:"encode-level" yaml:"encode-level"` // 编码级 StacktraceKey string `mapstructure:"stacktrace-key" json:"stacktrace-key" yaml:"stacktrace-key"` // 栈名 MaxAge int `mapstructure:"max-age" json:"max-age" yaml:"max-age"` // 日志留存时间 ShowLine bool `mapstructure:"show-line" json:"show-line" yaml:"show-line"` // 显示行 LogInConsole bool `mapstructure:"log-in-console" json:"log-in-console" yaml:"log-in-console"` // 输出控制台 }
func (*Zap) TransportLevel ¶
TransportLevel 根据字符串转化为 zapcore.Level Author [SliverHorn](https://github.com/SliverHorn)
func (*Zap) ZapEncodeLevel ¶
func (z *Zap) ZapEncodeLevel() zapcore.LevelEncoder
ZapEncodeLevel 根据 EncodeLevel 返回 zapcore.LevelEncoder Author [SliverHorn](https://github.com/SliverHorn)
Click to show internal directories.
Click to hide internal directories.