feat: TenantSource 抽象——File源(测试/档案)与DB源(生产),registry 数据源可切换+reload upsert
Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
@@ -81,7 +81,10 @@ async def avatar(request: Request):
|
||||
# 任意文件。显式拒绝分隔符与目录点,命中即回退静态兜底。
|
||||
if name in {".", ".."} or "/" in name or "\\" in name:
|
||||
name = ""
|
||||
candidate = runtime.seed_dir / "assets" / name if name else None
|
||||
# seed_dir=None = DB 源租户(Task 4;资产目录尚无 DB 侧存储)——直接
|
||||
# 落静态兜底,不让 None 进路径拼接炸 500
|
||||
candidate = (runtime.seed_dir / "assets" / name
|
||||
if name and runtime.seed_dir is not None else None)
|
||||
if candidate is not None and candidate.is_file():
|
||||
return FileResponse(
|
||||
candidate, headers={"Access-Control-Allow-Origin": "*"})
|
||||
|
||||
Reference in New Issue
Block a user