fix: ensure JWT secret is initialized before generating tokens
This commit is contained in:
+17
-4
@@ -16,14 +16,27 @@ import (
|
||||
)
|
||||
|
||||
func main() {
|
||||
// 检查是否已安装
|
||||
// 加载配置(必须先加载)
|
||||
if err := config.Load(""); err != nil {
|
||||
log.Printf("配置加载警告: %v", err)
|
||||
}
|
||||
|
||||
// 如果配置不存在,提示安装
|
||||
if !config.IsInstalled() {
|
||||
fmt.Println("系统未安装,请先访问 /install 进行安装配置")
|
||||
}
|
||||
|
||||
// 加载配置
|
||||
if err := config.Load(""); err != nil {
|
||||
log.Printf("警告: %v", err)
|
||||
// 确保有默认 JWT Secret
|
||||
if config.Cfg == nil {
|
||||
config.Cfg = &config.Config{
|
||||
Server: config.ServerConfig{Host: "0.0.0.0", Port: 6688, Mode: "release"},
|
||||
Database: config.DatabaseConfig{Type: "sqlite", SQLite: config.SQLiteConfig{Path: "./data/app.db"}},
|
||||
JWT: config.JWTConfig{Secret: generateRandomSecret(), ExpireTime: 1440},
|
||||
Captcha: config.CaptchaConfig{ModelPath: "./models"},
|
||||
}
|
||||
}
|
||||
if config.Cfg.JWT.Secret == "" {
|
||||
config.Cfg.JWT.Secret = generateRandomSecret()
|
||||
}
|
||||
|
||||
// 初始化数据库
|
||||
|
||||
Reference in New Issue
Block a user