Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -486,7 +486,7 @@ details > summary:hover { color: #E9D5FF !important; }
|
|
| 486 |
|
| 487 |
with gr.Blocks(theme=purple_theme, css=custom_css) as demo:
|
| 488 |
# 核心:为每个连接的用户生成唯一的 Session ID 和存放凭证的状态
|
| 489 |
-
session_id_state = gr.State(
|
| 490 |
user_api_key_state = gr.State("")
|
| 491 |
user_api_base_state = gr.State("")
|
| 492 |
|
|
@@ -541,8 +541,17 @@ with gr.Blocks(theme=purple_theme, css=custom_css) as demo:
|
|
| 541 |
refresh_btn = gr.Button("🔄 Refresh Directory Tree")
|
| 542 |
debug_view = gr.HTML()
|
| 543 |
|
| 544 |
-
|
| 545 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 546 |
|
| 547 |
# ================= LOGIC BINDINGS =================
|
| 548 |
|
|
|
|
| 486 |
|
| 487 |
with gr.Blocks(theme=purple_theme, css=custom_css) as demo:
|
| 488 |
# 核心:为每个连接的用户生成唯一的 Session ID 和存放凭证的状态
|
| 489 |
+
session_id_state = gr.State("")
|
| 490 |
user_api_key_state = gr.State("")
|
| 491 |
user_api_base_state = gr.State("")
|
| 492 |
|
|
|
|
| 541 |
refresh_btn = gr.Button("🔄 Refresh Directory Tree")
|
| 542 |
debug_view = gr.HTML()
|
| 543 |
|
| 544 |
+
# ================= LOGIC BINDINGS =================
|
| 545 |
+
|
| 546 |
+
# [新增] 专门的页面初始化函数:当用户打开网页时,生成 UUID 并返回给 State
|
| 547 |
+
def init_app_for_user():
|
| 548 |
+
new_session_id = str(uuid.uuid4())
|
| 549 |
+
# 获取 debug info 的同时,顺便把属于该用户的空文件夹也创建好
|
| 550 |
+
debug_html = get_debug_info(new_session_id)
|
| 551 |
+
return new_session_id, debug_html
|
| 552 |
+
|
| 553 |
+
# 在页面加载的瞬间,生成专属 ID 存入状态,并渲染空的监控视图
|
| 554 |
+
demo.load(fn=init_app_for_user, inputs=None, outputs=[session_id_state, debug_view])
|
| 555 |
|
| 556 |
# ================= LOGIC BINDINGS =================
|
| 557 |
|