minio上传图片工具类
时间: 2023-08-05 17:10:05 浏览: 126
你可以使用以下的Python代码来创建一个Minio上传图片的工具类:
```python
from minio import Minio
from minio.error import ResponseError
class MinioUploader:
def __init__(self, endpoint, access_key, secret_key, bucket_name):
self.endpoint = endpoint
self.access_key = access_key
self.secret_key = secret_key
self.bucket_name = bucket_name
def upload_image(self, file_path, object_name):
try:
minio_client = Minio(self.endpoint,
access_key=self.access_key,
secret_key=self.secret_key,
secure=False)
# 检查bucket是否存在,不存在则创建
if not minio_client.bucket_exists(self.bucket_name):
minio_client.make_bucket(self.bucket_name)
# 上传图片
minio_client.fput_object(self.bucket_name, object_name, file_path)
return True, "Image uploaded successfully"
except ResponseError as err:
return False, f"Error uploading image: {err}"
```
使用时,你需要提供Minio服务的endpoint、access_key、secret_key以及bucket_name。然后,你可以调用`upload_image`方法来上传图片。该方法接收两个参数:`file_path`表示本地图片文件的路径,`object_name`表示在Minio中保存的对象名称。
以下是一个使用示例:
```python
minio_uploader = MinioUploader(endpoint='minio.example.com',
access_key='your-access-key',
secret_key='your-secret-key',
bucket_name='your-bucket-name')
success, message = minio_uploader.upload_image('/path/to/image.jpg', 'image.jpg')
if success:
print(message)
else:
print(f"Error: {message}")
```
请确保已经安装了`minio`库,可以使用`pip install minio`来进行安装。此外,根据你实际的Minio配置,需要修改代码中的相关参数。
阅读全文