.NET SDK

简介

.NET SDK便于.NET平台开发者快速对接使用OBS对象存储服务。在使用之前,您需要确保已经是平安云用户,并且开通了OBS服务。如果您还没有开通或者还不了解平安云 OBS 服务,请登录 OBS产品主页 进行了解。

SDK下载

.NET SDK 开发包最新版本 v1.0.0

API概览

API

描述

PutObject

OBS .NET SDK 提供了多种文件上传接口,可以通过以下方式上传文件:

  • 文件上传
  • 流式上传

GetObject

文件下载

GetDownloadUrl

获取下载链接

DeleteObject

删除文件

API描述

(1)初始化

接口描述

初始化调用OBS服务的对象ObsService,提供三个入参的构造方法。ObsService提供上传、下载、上传文件基本操作。

您需要接入平安云OBS服务,拥有有效的accessKey、secretKey进行签名认证。

请求参数

参数名称

参数类型

是否必须

参数描述

备注

endpoint

String

true

OBS区域访问地址

-

accessKey

String

true

OBS租户访问的ak

-

secretKey

String

true

OBS租户访问秘钥

-

响应参数

参数名称

参数类型

参数描述

备注

ObsService

var

实例化对象

-

实例

var obsService = new ObsService("your endpoint", "your accessKey", "your secretKey");

(2)PutObject

接口描述

文件上传

PutObjectResponse PutObject(String BucketName, String ObjectKey, String FilePath)
      PutObjectResponse PutObject(String BucketName, String ObjectKey, String FilePath, MetadataCollection Metadata)

请求参数

参数名称

参数类型

是否必须

参数描述

备注

bucketName

String

true

保存对象的 bucket 名称

-

objectKey

String

true

对象Key,需自行实现策略保证同一bucket下objectKey唯一,不能为空,首字符不能为路径符

-

filePath

String

true

上传文件的路径

-

metadata

MetadataCollection

false

对象元信息

-

响应参数

参数名称

参数类型

参数描述

备注

putObjectResult

PutObjectResult

PutObjectResult返回对象

-

实例

/*标准文件上传*/
      var putObjectResult = obsService.PutObject(BucketName,ObjectKey,FilePath);
      /*附带文件原信息上传*/
      var metaData = new MetadataCollection();
      metaData.Add("file_name","test.jpg");
      var putObjectResult = obsService.PutObject PutObject(BucketName, ObjectKey, FilePath, metaData);

(3) PutObject

接口描述

流式上传

PutObjectResponse PutObject(String BucketName, String ObjectKey, Stream InputStream)
      PutObjectResponse PutObject(String BucketName, String ObjectKey, Stream InputStream, MetadataCollection Metadata)

请求参数

参数名称

参数类型

是否必须

参数描述

备注

bucketName

String

true

保存对象的 bucket 名称

-

objectKey

String

true

对象Key,需自行实现策略保证同一bucket下objectKey唯一,不能为空,首字符不能为路径符

-

inputStream

Stream

true

输入流

-

metadata

MetadataCollection

false

对象元信息

-

响应参数

参数名称

参数类型

参数描述

备注

putObjectResult

PutObjectResult

PutObjectResult返回对象

-

实例

/*标准流上传*/
      var putObjectResult = obsService.PutObject(BucketName,ObjectKey,InputStream);
      /*附带流原信息上传*/
      var metaData = new MetadataCollection();
      metaData.Add("file_name","test.jpg");
      var putObjectResult = obsService.PutObject PutObject(BucketName, ObjectKey, InputStream, metaData);

(4) GetObject

接口描述

文件下载

GetObjectResponse GetObject (String BucketName, String ObjectKey)

请求参数

参数名称

参数类型

是否必须

参数描述

备注

bucketName

String

true

保存对象的 bucket 名称

-

objectKey

String

true

对象Key,需自行实现策略保证同一bucket下objectKey唯一,不能为空,首字符不能为路径符

-

响应参数

参数名称

参数类型

参数描述

备注

getObjectResponse

GetObjectResponse

GetObjectResponse对象

-

实例

var getObjectResp = os.GetObject(bucketName, keyName);

(5) GetDownloadUrl

接口描述

获取下载链接。

String GetDownloadUrl(String BucketName, String ObjectKey)
      String GetDownloadUrl(String BucketName, String ObjectKey, String displayFileName)
      String GetDownloadUrl(String BucketName, String ObjectKey, String displayFileName, long expiresSeconds)

请求参数

参数名称

参数类型

是否必须

参数描述

备注

bucketName

String

true

保存对象的 bucket 名称

-

objectKey

String

true

对象Key

-

displayFileName

String

false

在请求url时,期望云存储服务端返回的content-disposition头信息,默认为null

-

expireSeconds

long

false

url有效秒数,url生成后,在此时间段内有效,过期的url会被云存储拒绝访问,默认为20s

-

响应参数

参数名称

参数类型

参数描述

备注

url

String

已签名的文件下载链接

-

(6) DeleteObject

接口描述

删除文件

DeleteObjectResponse DeleteObject(String BucketName, String ObjectKey)

请求参数

参数名称

参数类型

是否必须

参数描述

备注

bucketName

String

true

保存对象的 bucket 名称

-

objectKey

String

true

对象Key

-

响应参数

参数名称

参数类型

参数描述

备注

deleteObjectResponse

DeleteObjectResponse

DeleteObjectResponse对象

-

以上内容是否解决了您的问题?
请补全提交信息!
咨询·建议

电话咨询

400-151-8800

邮件咨询

cloud@pingan.com

在线客服

工单支持

解决云产品相关技术问题