From 7c9df70724f0a28571a3ac43e2d607560974c702 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B0=A2=E4=BF=8A=E7=94=B7?= Date: Thu, 18 Dec 2025 12:20:21 +0800 Subject: [PATCH] feat(apikey system): api key authentication adds the GET method --- .../controllers/service/app_api_controller.py | 29 ++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/api/app/controllers/service/app_api_controller.py b/api/app/controllers/service/app_api_controller.py index 1731405c..f8bacc34 100644 --- a/api/app/controllers/service/app_api_controller.py +++ b/api/app/controllers/service/app_api_controller.py @@ -1,6 +1,6 @@ """App 服务接口 - 基于 API Key 认证""" import uuid -from fastapi import APIRouter, Depends, Request, Body +from fastapi import APIRouter, Depends, Request, Body, Query from sqlalchemy.orm import Session from app.db import get_db @@ -44,3 +44,30 @@ async def chat_with_agent_demo( logger.info(f"Resource ID: {resource_id}") logger.info(f"Message: {message}") return success(data={"received": True}, msg="消息已接收") + +# /v1/apps/{resource_id}/chat +@router.get("/{resource_id}/chat") +@require_api_key(scopes=["app"]) +async def chat_with_agent_demo( + resource_id: uuid.UUID, + request: Request, + api_key_auth: ApiKeyAuth = None, + db: Session = Depends(get_db), + message: str = Query(..., description="聊天消息内容"), +): + """ + Agent 聊天接口demo + + scopes: 所需的权限范围列表["app", "rag", "memory"] + + Args: + resource_id: 如果是应用的apikey传的是应用id; 如果是服务的apikey传的是工作空间id + message: 请求参数 + request: 声明请求 + api_key_auth: 包含验证后的API Key 信息 + db: db_session + """ + logger.info(f"API Key Auth: {api_key_auth}") + logger.info(f"Resource ID: {resource_id}") + logger.info(f"Message: {message}") + return success(data={"received": True}, msg="消息已接收")