OssClient 用于管理阿里云OSS对象存储的文档数据。

Nuget包:NewLife.Core

源码地址:https://github.com/NewLifeX/X/blob/master/NewLife.Core/Yun/OssClient.cs


基本属性

主要属性设置,主要是指定阿里云OSS地址和应用密钥,还有Bucket名称。

/// <summary>访问域名</summary>
public String Endpoint { get; set; } = "http://oss-cn-shanghai.aliyuncs.com";

/// <summary>访问密钥</summary>
public String AccessKeyId { get; set; }

/// <summary>访问密钥</summary>
public String AccessKeySecret { get; set; }

/// <summary>存储空间</summary>
public String BucketName { get; set; }


Bucket操作

主要用于列出Bucket等操作,安全起见,未实现添删改Bucket的功能,建议在阿里云控制台人工操作。实在有需要时,可以继承OssClient进行扩展。

/// <summary>列出所有存储空间名称</summary>
/// <returns></returns>
public async Task<String[]> ListBuckets();

/// <summary>列出所有存储空间明细,支持过滤</summary>
/// <param name="prefix"></param>
/// <param name="marker"></param>
/// <param name="maxKeys"></param>
/// <returns></returns>
public async Task<IList<Object>> ListBuckets(String prefix, String marker, Int32 maxKeys = 100);


Object操作

对象操作主要成员如下:

/// <summary>列出所有文件名称</summary>
/// <returns></returns>
public async Task<String[]> ListObjects();

/// <summary>列出所有文件明细,支持过滤</summary>
/// <param name="prefix"></param>
/// <param name="marker"></param>
/// <param name="maxKeys"></param>
/// <returns></returns>
public async Task<IList<Object>> ListObjects(String prefix, String marker, Int32 maxKeys = 100);

/// <summary>上传文件</summary>
/// <param name="objectName">对象文件名</param>
/// <param name="data">数据内容</param>
/// <returns></returns>
public async Task PutObject(String objectName, Byte[] data);

/// <summary>获取文件</summary>
/// <param name="objectName"></param>
/// <returns></returns>
public async Task<Byte[]> GetObject(String objectName);

/// <summary>删除文件</summary>
/// <param name="objectName"></param>
/// <returns></returns>
public async Task DeleteObject(String objectName);

文件列表、搜索、上传、获取、删除,各功能已经俱全。


总结

OssClient 是阿里云OSS对象存储的轻量级封装,主要用于核心的常用功能。


作者:大石头 发布:2021-02-19 16:11:37 浏览:3,216)