licensing-cotton/cmd/server/main.go
2025-01-16 15:41:42 +08:00

44 lines
1011 B
Go

package main
import (
"log"
"net/http"
"licensing-cotton/internal/database"
"licensing-cotton/internal/handlers"
"licensing-cotton/internal/security"
)
func main() {
passphrase := "2718"
// 1. 初始化数据库
if err := database.InitDB("mydb.db"); err != nil {
log.Fatalf("数据库初始化失败: %v", err)
}
// 2. 初始化 ECC 密钥
if err := security.InitECCKey(); err != nil {
log.Fatalf("生成ECC密钥对失败: %v", err)
}
// 初始化私钥
if err := security.InitEd25519Keys(passphrase); err != nil {
log.Fatalf("Failed to initialize keys: %v", err)
}
// 3. 初始化默认管理员
if err := handlers.EnsureDefaultAdmin("admin", "admin123"); err != nil {
log.Printf("初始化默认管理员失败: %v", err)
}
// 4. 注册路由
mux := handlers.RegisterRoutes()
// 5. 启动HTTP服务器
log.Println("服务器启动中,监听 :8080 ...")
if err := http.ListenAndServe("0.0.0.0:8895", mux); err != nil {
log.Fatal("服务器启动失败:", err)
}
}