优化Map加载配置函数

This commit is contained in:
aixiao 2025-03-13 11:32:40 +08:00
parent cb8bbbf313
commit 2c5dd4064b
2 changed files with 6 additions and 34 deletions

BIN
denyip

Binary file not shown.

40
main.go
View File

@ -173,8 +173,7 @@ func saveMapToFile(filePath string) error {
return nil
}
// 增加从文件加载的函数
func loadMapFromFile(filePath string) error {
func loadFromFile(filePath string, logMessage string) error {
ProcessedMutex.Lock()
defer ProcessedMutex.Unlock()
@ -182,7 +181,7 @@ func loadMapFromFile(filePath string) error {
if err != nil {
if os.IsNotExist(err) {
log.Println("文件不存在,跳过加载 Map")
return nil // 文件不存在不是致命错误
return nil
}
return fmt.Errorf("打开文件失败: %w", err)
}
@ -193,44 +192,17 @@ func loadMapFromFile(filePath string) error {
return fmt.Errorf("解码 Map 失败: %w", err)
}
log.Println("Map 已成功从文件加载")
return nil
}
func ReadWhiteList(filePath string) error { // 白名单读取
ProcessedMutex.Lock()
defer ProcessedMutex.Unlock()
file, err := os.Open(filePath)
if err != nil {
if os.IsNotExist(err) {
log.Println("文件不存在,跳过加载 Map")
return nil // 文件不存在不是致命错误
}
return fmt.Errorf("打开文件失败: %w", err)
}
defer file.Close()
decoder := json.NewDecoder(file)
if err := decoder.Decode(&ProcessedIPMap); err != nil {
return fmt.Errorf("解码 Map 失败: %w", err)
}
log.Println("白名单 Map 已成功从文件加载!!!")
log.Println(logMessage)
return nil
}
func InitMap() {
if err := loadMapFromFile("cn.json"); err != nil {
if err := loadFromFile("cn.json", "Map 已成功从文件加载"); err != nil {
log.Fatalf("加载 Map 失败: %v", err)
} else {
log.Printf("加载 Map 成功!!!")
}
if err := ReadWhiteList("white.json"); err != nil { // 白名单读取
log.Fatalf("加载白名单 Map 失败: %v", err)
} else {
log.Printf("加载白名单 Map 成功!!!")
if err := loadFromFile("white.json", "白名单 Map 已成功从文件加载!!!"); err != nil {
log.Fatalf("加载 Map 失败: %v", err)
}
defer func() {