Documentation ¶
Index ¶
- Variables
- func BackendURL() string
- func BackendUploadURL(subdir string, values ...interface{}) string
- func BatchUpload(ctx echo.Context, fieldName string, ...) (results uploadClient.Results, err error)
- func CheckerRegister(typ string, checker Checker)
- func CleanTempFile(prefix string, deleter func(folderPath string) error) error
- func ConfigChecker(ctx echo.Context, tis table.TableInfoStorer) (subdir string, name string, err error)
- func DBSaverRegister(key string, dbsaver DBSaver)
- func DBSaverUnregister(keys ...string)
- func FrontendURL() string
- func FrontendUploadURL(subdir string, values ...interface{}) string
- func ResponserAll() map[string]Responser
- func ResponserRegister(field string, responser Responser)
- func StorerAll(engine string) map[string]Constructor
- func StorerRegister(engine string, constructor Constructor)
- func SubdirAll() map[string]*SubdirInfo
- func SubdirIsAllowed(subdir string) bool
- func SubdirUnregister(subdirList ...string)
- func Token(values ...interface{}) string
- func URLParam(subdir string, values ...interface{}) string
- type APIKey
- type Checker
- type Constructor
- type DBSaver
- type Responser
- type Sizer
- type Storer
- type SubdirInfo
- func (i *SubdirInfo) Checker() Checker
- func (i *SubdirInfo) FieldName() string
- func (i *SubdirInfo) GetNameEN() string
- func (i *SubdirInfo) MustChecker() Checker
- func (i *SubdirInfo) SetAllowed(allowed bool) *SubdirInfo
- func (i *SubdirInfo) SetChecker(checker Checker) *SubdirInfo
- func (i *SubdirInfo) SetDescription(description string) *SubdirInfo
- func (i *SubdirInfo) SetFieldName(fieldName string) *SubdirInfo
- func (i *SubdirInfo) SetName(name string) *SubdirInfo
- func (i *SubdirInfo) SetNameEN(nameEN string) *SubdirInfo
- func (i *SubdirInfo) SetTableName(tableName string) *SubdirInfo
- func (i *SubdirInfo) String() string
- func (i *SubdirInfo) TableName() string
Constants ¶
This section is empty.
Variables ¶
View Source
var ( //BackendUploadPath 后台上传网址路径 BackendUploadPath = `/manager/upload` //FrontendUploadPath 前台上传网址路径 FrontendUploadPath = `/user/upload` //SetURLParamDefaultValue 设置参数默认值 SetURLParamDefaultValue func(*url.Values) )
View Source
var DefaultChecker = func(ctx echo.Context, tis table.TableInfoStorer) (subdir string, name string, err error) { refid := ctx.Formx(`refid`).String() timestamp := ctx.Formx(`time`).Int64() if len(refid) == 0 { refid = `0` } if ctx.Form(`token`) != Token(`refid`, refid, `time`, timestamp) { err = ctx.E(`令牌错误`) return } if time.Now().Local().Unix()-timestamp > UploadLinkLifeTime { err = ctx.E(`上传网址已过期`) return } subdir = fmt.Sprint(refid) + `/` tis.SetTableID(refid) return }
View Source
var ( DefaultDBSaver = func(fileM *modelFile.File, result *uploadClient.Result, reader io.Reader) error { return nil } )
View Source
var DefaultResponser = func(ctx echo.Context, field string, err error, imageURLs []string) (result echo.H, embed bool) { return echo.H{ `files`: imageURLs, }, true }
View Source
var (
ErrExistsFile = table.ErrExistsFile
)
View Source
var UploadLinkLifeTime int64 = 86400
UploadLinkLifeTime 上传链接生存时间
Functions ¶
func BackendUploadURL ¶
BackendUploadURL 构建后台上传网址
func BatchUpload ¶
func CheckerRegister ¶
func CleanTempFile ¶
CleanTempFile 清理临时文件
func ConfigChecker ¶
func ConfigChecker(ctx echo.Context, tis table.TableInfoStorer) (subdir string, name string, err error)
ConfigChecker 系统配置文件上传
func DBSaverRegister ¶
func DBSaverUnregister ¶
func DBSaverUnregister(keys ...string)
func FrontendUploadURL ¶
FrontendUploadURL 构建前台上传网址
func ResponserAll ¶
func ResponserRegister ¶
func StorerAll ¶
func StorerAll(engine string) map[string]Constructor
func StorerRegister ¶
func StorerRegister(engine string, constructor Constructor)
func SubdirAll ¶
func SubdirAll() map[string]*SubdirInfo
func SubdirIsAllowed ¶
func SubdirUnregister ¶
func SubdirUnregister(subdirList ...string)
Types ¶
type Checker ¶
func CheckerGet ¶
type Constructor ¶
var DefaultConstructor Constructor
func StorerGet ¶
func StorerGet(engine string) Constructor
type DBSaver ¶
func DBSaverGet ¶
type Responser ¶
type Responser func(ctx echo.Context, field string, err error, imageURLs []string) (result echo.H, embed bool)
func ResponserGet ¶
type Storer ¶
type Storer interface { // 引擎名 Name() string // FileDir 文件夹物理路径 FileDir(subpath string) string // URLDir 文件夹网址路径 URLDir(subpath string) string // Put 保存文件 Put(dst string, src io.Reader, size int64) (savePath string, viewURL string, err error) // Get 获取文件 Get(file string) (io.ReadCloser, error) // Exists 文件是否存在 Exists(file string) (bool, error) // FileInfo 文件信息 FileInfo(file string) (os.FileInfo, error) // SendFile 输出文件到浏览器 SendFile(ctx echo.Context, file string) error // Delete 删除文件 Delete(file string) error // DeleteDir 删除目录 DeleteDir(dir string) error // PublicURL 文件网址 PublicURL(dst string) string // URLToFile 网址转文件物理路径 URLToFile(viewURL string) string // FixURL 修正网址 FixURL(content string, embedded ...bool) string // FixURLWithParams 修正网址并增加网址参数 FixURLWithParams(content string, values url.Values, embedded ...bool) string // Close 关闭连接 Close() error }
type SubdirInfo ¶
type SubdirInfo struct { Allowed bool Key string Name string NameEN string Description string // contains filtered or unexported fields }
SubdirInfo 子目录信息
func SubdirGet ¶
func SubdirGet(subdir string) *SubdirInfo
func SubdirRegister ¶
func SubdirRegister(subdir string, allow interface{}, nameAndDescription ...string) *SubdirInfo
func SubdirRegisterObject ¶
func SubdirRegisterObject(subdir string, info *SubdirInfo) *SubdirInfo
func (*SubdirInfo) Checker ¶
func (i *SubdirInfo) Checker() Checker
func (*SubdirInfo) FieldName ¶
func (i *SubdirInfo) FieldName() string
func (*SubdirInfo) GetNameEN ¶
func (i *SubdirInfo) GetNameEN() string
func (*SubdirInfo) MustChecker ¶
func (i *SubdirInfo) MustChecker() Checker
func (*SubdirInfo) SetAllowed ¶
func (i *SubdirInfo) SetAllowed(allowed bool) *SubdirInfo
func (*SubdirInfo) SetChecker ¶
func (i *SubdirInfo) SetChecker(checker Checker) *SubdirInfo
func (*SubdirInfo) SetDescription ¶
func (i *SubdirInfo) SetDescription(description string) *SubdirInfo
func (*SubdirInfo) SetFieldName ¶
func (i *SubdirInfo) SetFieldName(fieldName string) *SubdirInfo
func (*SubdirInfo) SetName ¶
func (i *SubdirInfo) SetName(name string) *SubdirInfo
func (*SubdirInfo) SetNameEN ¶
func (i *SubdirInfo) SetNameEN(nameEN string) *SubdirInfo
func (*SubdirInfo) SetTableName ¶
func (i *SubdirInfo) SetTableName(tableName string) *SubdirInfo
func (*SubdirInfo) String ¶
func (i *SubdirInfo) String() string
func (*SubdirInfo) TableName ¶
func (i *SubdirInfo) TableName() string
Source Files ¶
Click to show internal directories.
Click to hide internal directories.