- 端点权限 any -> logined(用户纠偏:路由至少 logined) - 认证统一由 RBAC 中间件把关:cookie 会话 或 Bearer <dapi key> (dapi.bearer_auth 注册在 registered_auth_methods,认证后建立会话), 未认证到不了 dspy,删除 verify_api_key 自查 - dspy 用 C.session_env(request) 取真实请求 env(org 走会话), 与 UI 通道同一身份机制 - make_api_env 保留给内部 tools 通道(宿主注入可信 org,无 HTTP 会话)
10 lines
495 B
Plaintext
10 lines
495 B
Plaintext
# 对外 API:文件上传(原始字节 body)
|
||
# POST /rag/api/doc_upload.dspy?kb_id=X&file_name=Y 认证:cookie 会话或 Authorization: Bearer <dapi key>,RBAC logined 把关
|
||
# Content-Type: application/octet-stream,请求体即文件原始字节
|
||
from rag import api_core as C
|
||
_ns = dict(params_kw or {})
|
||
_file_data = await request.read()
|
||
_file_name = _ns.get('file_name', '') or 'upload.bin'
|
||
env = C.session_env(request)
|
||
return await C.doc_upload(env, _ns, _file_data, _file_name)
|