package main import ( "os" "gopkg.in/yaml.v3" ) // Config 应用程序配置结构 type Config struct { RestAddr string `yaml:"rest_addr"` WsAddr string `yaml:"ws_addr"` MetricsAddr string `yaml:"metrics_addr"` NATSURL string `yaml:"nats_url"` PersistenceType string `yaml:"persistence_type"` PersistenceDir string `yaml:"persistence_dir"` SyncEvery int `yaml:"sync_every"` } func LoadConfig(path string) (*Config, error) { file, err := os.Open(path) if err != nil { return nil, err } defer file.Close() var config Config decoder := yaml.NewDecoder(file) if err := decoder.Decode(&config); err != nil { return nil, err } return &config, nil }