feat(session): add session removal endpoint and refactor session management
- Implement new `/sessionMgr/remove` endpoint for superusers to remove sessions - Refactor session and token management to use sessionTokenMap for better tracking - Update session cleanup logic to handle both tokens and sessions - Add documentation for new API endpoint in docs/api.md - Modify logout handler to use new session removal approach
This commit is contained in:
@@ -313,6 +313,15 @@ func DBQueryUsers() ([]User, error) { // List all users
|
||||
return users, nil
|
||||
}
|
||||
|
||||
func DBQuerySpecificUser(userID int) (User, error) { // Query user by ID
|
||||
var user User
|
||||
err := db.QueryRow("SELECT userID, username, type FROM userLogin WHERE userID = ?", userID).Scan(&user.UserID, &user.Username, &user.Type)
|
||||
if err != nil {
|
||||
return user, fmt.Errorf("failed to query user: %w", err)
|
||||
}
|
||||
return user, nil
|
||||
}
|
||||
|
||||
func DBAddFrpcInstance(instance FrpcInstance) error {
|
||||
_, err := frpcDB.Exec("INSERT INTO frpcInstances (userID, name, serverAddr, serverPort, auth_method, bootAtStart, runUser, configPath, createdAt) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)",
|
||||
instance.UserID, instance.Name, instance.ServerAddr, instance.ServerPort, instance.AuthMethod, instance.BootAtStart, instance.RunUser, instance.ConfigPath, time.Now().Format(time.RFC3339))
|
||||
|
||||
Reference in New Issue
Block a user