Spaces:
Running
Running
David Ko
commited on
Commit
Β·
51bb097
1
Parent(s):
a8dbc72
Fix login redirect issue and enhance session management
Browse files
api.py
CHANGED
@@ -34,11 +34,14 @@ CORS(app) # Enable CORS for all routes
|
|
34 |
|
35 |
# μν¬λ¦Ώ ν€ μ€μ (μΈμ
μνΈνμ μ¬μ©)
|
36 |
app.config['SECRET_KEY'] = os.environ.get('SECRET_KEY', 'vision_llm_agent_secret_key')
|
|
|
|
|
37 |
|
38 |
# Flask-Login μ€μ
|
39 |
login_manager = LoginManager()
|
40 |
login_manager.init_app(app)
|
41 |
login_manager.login_view = 'login'
|
|
|
42 |
|
43 |
# μ¬μ©μ ν΄λμ€ μ μ
|
44 |
class User(UserMixin):
|
@@ -1123,9 +1126,18 @@ def login():
|
|
1123 |
print(f"Login attempt: username={username}")
|
1124 |
|
1125 |
if username in users and users[username].password == password:
|
1126 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1127 |
next_page = request.args.get('next')
|
1128 |
-
if next_page:
|
1129 |
return redirect(next_page)
|
1130 |
return redirect('/')
|
1131 |
else:
|
|
|
34 |
|
35 |
# μν¬λ¦Ώ ν€ μ€μ (μΈμ
μνΈνμ μ¬μ©)
|
36 |
app.config['SECRET_KEY'] = os.environ.get('SECRET_KEY', 'vision_llm_agent_secret_key')
|
37 |
+
app.config['SESSION_TYPE'] = 'filesystem'
|
38 |
+
app.config['PERMANENT_SESSION_LIFETIME'] = 3600 # μΈμ
μ ν¨ μκ° (μ΄)
|
39 |
|
40 |
# Flask-Login μ€μ
|
41 |
login_manager = LoginManager()
|
42 |
login_manager.init_app(app)
|
43 |
login_manager.login_view = 'login'
|
44 |
+
login_manager.session_protection = 'strong'
|
45 |
|
46 |
# μ¬μ©μ ν΄λμ€ μ μ
|
47 |
class User(UserMixin):
|
|
|
1126 |
print(f"Login attempt: username={username}")
|
1127 |
|
1128 |
if username in users and users[username].password == password:
|
1129 |
+
# λ‘κ·ΈμΈ μ±κ³΅ μ μΈμ
μ μ¬μ©μ μ 보 μ μ₯
|
1130 |
+
user = users[username]
|
1131 |
+
login_user(user, remember=True)
|
1132 |
+
session['user_id'] = user.id
|
1133 |
+
session['username'] = username
|
1134 |
+
session.permanent = True
|
1135 |
+
|
1136 |
+
print(f"Login successful for user: {username}")
|
1137 |
+
|
1138 |
+
# 리λλ μ
μ²λ¦¬
|
1139 |
next_page = request.args.get('next')
|
1140 |
+
if next_page and next_page.startswith('/'):
|
1141 |
return redirect(next_page)
|
1142 |
return redirect('/')
|
1143 |
else:
|