huawei cloud obs .net sdk
安装nuget HuaweiCloudObs
在appsettings.json里添加配置
"HuaweiCloudObs": {
"EndPoint": "obs.cn-east-3.myhuaweicloud.com",
"AccessKey": "xxx",
"SecretKey": "xxx"
}
在Startup.cs的ConfigureService()方法里加入完成注入. 需传入IConfigurationRoot
services.AddHuaweiCloudObs(configuration);
需要使用的地方注入对应接口 以Abp的appservice为例,如MyAppService. 直接使用Controller也是差不多,注入后即可使用
public class MyObsAppService : ApplicationService
{
private readonly IObsObjectApi _objectApi;
public MyObsAppService(IObsObjectApi api)
{
api.Bucket = "MyBucket";//设置bucket,可以放在配置里注入,也可存入数据库后读取
_objectApi = api;
}
public async Task UploadAsync(IFormFile file, string name)
{
var bytes = await file.GetAllBytes();
await _objectApi.PutAsync(name, file);
}
public Task DeleteAsync(string name)
{
return _objectApi.DeleteAsync(name);
}
public async Task DeleteBatchAsync(IEnumerable<string> names)
{
var result = await _objectApi.DeleteBatchAsync(new DeleteObjectsRequest
{
Objects = name.Select(f => new DeleteObject{ Key = f}).ToList()
});
if(result.Errors.Count > 0)
{
//存在删除失败对象
//TODO: 删除失败处理
}
}
}
- PUT上传
- POST上传
- 复制对象
- 获取对象内容
- 获取对象元数据
- 删除对象
- 批量删除对象
- 取回归档存储对象
- 追加写对象
- 设置对象ACL
- 获取对象ACL
- 修改对象元数据
- 修改写对象
- 截断对象
- 重命名对象
- 设置桶策略
- 获取桶策略
- 删除桶策略
- 设置桶ACL
- 获取桶ACL
- 设置桶日志管理配置
- 获取桶日志管理配置
- 设置桶的生命周期配置
- 获取桶的生命周期配置
- 删除桶的生命周期配置
- 设置桶的多版本状态
- 获取桶的多版本状态
- 设置桶的消息通知配置
- 获取桶的消息通知配置
- 设置桶默认存储类型
- 获取桶默认存储类型
- 设置桶的跨区域复制配置
- 获取桶的跨区域复制配置
- 删除桶的跨区域复制配置
- 设置桶标签
- 获取桶标签
- 删除桶标签
- 设置桶配额
- 获取桶配额
- 获取桶存量信息
- 设置桶清单
- 获取桶清单
- 列举桶清单
- 删除桶清单
- 设置桶的自定义域名
- 获取桶的自定义域名
- 删除桶的自定义域名
- 设置桶的加密配置
- 获取桶的加密配置
- 删除桶的加密配置
- 设置桶归档对象直读策略
- 获取桶归档对象直读策略
- 删除桶归档对象直读策略
- 设置镜像回源规则
- 获取镜像回源规则
- 删除镜像回源规则
- 设置在线解压策略
- 获取在线解压策略
- 删除在线解压策略