Private
Public Access
1
0
Files
u-desk/internal/filesystem/constants.go

58 lines
1.4 KiB
Go

package filesystem
import (
"time"
)
// 文件大小限制常量
const (
// ZIP 文件大小限制
MaxZipSize = 100 * 1024 * 1024 // 100MB - ZIP 文件最大大小
MaxExtractSize = 500 * 1024 * 1024 // 500MB - 解压后总大小限制
MaxSingleFileSize = 50 * 1024 * 1024 // 50MB - ZIP 中单个文件最大大小
// HTTP 文件服务大小限制
MaxHTTPFileSize = 500 * 1024 * 1024 // 500MB - HTTP 访问文件最大大小
)
// 时间相关常量
const (
// 审计日志
AuditLogBufferSize = 100 // 审计日志缓冲区大小
// 临时文件
TempFileCleanupAge = 24 * time.Hour // 临时文件清理周期
TempFileDir = "u-desk-zip" // 临时文件目录名
)
// 数量限制常量
const (
MaxFileCount = 1000 // 最大文件数量(目录)
)
// 文件操作相关常量
const (
DefaultFilePermissions = 0644 // 默认文件权限 (rw-r--r--)
DefaultDirPermissions = 0755 // 默认目录权限 (rwxr-xr-x)
)
// 随机字符串相关常量
const (
RandomStringDefaultLength = 6 // 回收站文件名随机后缀长度
)
// 路径遍历检测字符串
const (
PathTraversalPattern = ".." // 路径遍历特征字符串
)
// 文件类型常量
const (
FileTypeImage = "image"
FileTypeVideo = "video"
FileTypeAudio = "audio"
FileTypeDocument = "document"
FileTypeText = "text"
FileTypeApplication = "application"
)