minio_client.py 655 B

123456789101112131415161718192021
  1. from minio import Minio
  2. from services import MINIO_ENDPOINT, MINIO_ACCESS_KEY, MINIO_SECRET_KEY, MINIO_SECURE, DATA_HOST_URL
  3. # 初始化全局 MinIO 客户端
  4. minio_client = Minio(
  5. MINIO_ENDPOINT,
  6. access_key=MINIO_ACCESS_KEY,
  7. secret_key=MINIO_SECRET_KEY,
  8. secure=MINIO_SECURE
  9. )
  10. def get_full_url(path: str) -> str:
  11. """将相对路径转换为可以直接打开的 MinIO 绝对 URL"""
  12. if not path:
  13. return path
  14. if str(path).startswith("http"):
  15. return path
  16. # 移除开头的斜杠防止双斜杠 (如: /Data/xxx -> Data/xxx)
  17. clean_path = str(path).lstrip("/\\")
  18. return f"{DATA_HOST_URL}/{clean_path}"