diff --git a/backend/config/config.go b/backend/config/config.go new file mode 100644 index 0000000..556f8fb --- /dev/null +++ b/backend/config/config.go @@ -0,0 +1,38 @@ +package configs + +import ( + "os" + "path/filepath" +) + +// Config 应用配置 +type Config struct { + RootPath string + OfficialNamesHead string + Headers map[string]string +} + +// NewConfig 创建新的配置实例 +func NewConfig() *Config { + // 获取当前工作目录 + rootDir, err := os.Getwd() + if err != nil { + rootDir = "." + } + + // 确保数据目录存在 + dataDir := filepath.Join(rootDir, "data") + if _, err := os.Stat(dataDir); os.IsNotExist(err) { + os.MkdirAll(dataDir, 0755) + } + + return &Config{ + RootPath: rootDir + "/", + OfficialNamesHead: "data/official_accounts/", + Headers: map[string]string{ + "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", + "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "Accept-Language": "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2", + }, + } +}