优化Map加载配置函数
This commit is contained in:
parent
cb8bbbf313
commit
2c5dd4064b
40
main.go
40
main.go
@ -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() {
|
||||
|
Loading…
x
Reference in New Issue
Block a user