fix: ensure JWT secret is initialized before generating tokens
This commit is contained in:
+17
-4
@@ -16,14 +16,27 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
// 检查是否已安装
|
// 加载配置(必须先加载)
|
||||||
|
if err := config.Load(""); err != nil {
|
||||||
|
log.Printf("配置加载警告: %v", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
// 如果配置不存在,提示安装
|
||||||
if !config.IsInstalled() {
|
if !config.IsInstalled() {
|
||||||
fmt.Println("系统未安装,请先访问 /install 进行安装配置")
|
fmt.Println("系统未安装,请先访问 /install 进行安装配置")
|
||||||
}
|
}
|
||||||
|
|
||||||
// 加载配置
|
// 确保有默认 JWT Secret
|
||||||
if err := config.Load(""); err != nil {
|
if config.Cfg == nil {
|
||||||
log.Printf("警告: %v", err)
|
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