package config import ( "os" "time" ) // Config 应用配置 type Config struct { ServerPort string ReadTimeout time.Duration WriteTimeout time.Duration SM3Salt string SM4Key []byte CallbackURL string } // Load 加载配置,优先从环境变量读取 func Load() *Config { sm4KeyStr := getEnv("SM4_KEY", "1234567890abcdef") return &Config{ ServerPort: getEnv("SERVER_PORT", "8080"), ReadTimeout: 10 * time.Second, WriteTimeout: 10 * time.Second, SM3Salt: getEnv("SM3_SALT", "default_salt"), SM4Key: []byte(sm4KeyStr), CallbackURL: getEnv("CALLBACK_URL", ""), } } func getEnv(key, defaultValue string) string { if v := os.Getenv(key); v != "" { return v } return defaultValue }