集成方式
通过 nuget 安装
1. 通过命令行安装:
dotnet add package VodSDK --version 1.0.1
2. 通过 Visual Studio 的 NuGet 包管理工具,搜索 VodSDK 并安装。
通过源码包安装
如果项目中没有使用 nuget 工具,可以直接下载源码导入项目中使用:
下载最新代码,解压后安装到项目工作目录下,使用 Visual Studio 2017 打开编译。因为此 SDK 还依赖外部的包,所以需要同时安装如下 SDK:
简单上传
初始化一个上传客户端对象
使用云 API 密钥初始化 VodUploadClient 实例。
using System;using VodSDK;VodUploadClient client = new VodUploadClient("your secretId", "your secretKey");
构造上传请求对象
设置媒体本地上传路径。
VodUploadRequest request = new VodUploadRequest();request.MediaFilePath = "/data/videos/Wildlife.wmv";
调用上传
调用上传方法,传入接入点地域及上传请求。
try{VodUploadResponse response = client.Upload("ap-guangzhou", request);// 打印媒体 FileIdConsole.WriteLine(response.FileId);}catch (Exception e){// 业务方进行异常处理Console.WriteLine(e);}
说明:
上传方法根据用户文件的长度,自动选择普通上传以及分片上传,用户不用关心分片上传的每个步骤,即可实现分片上传。
高级功能
携带封面
using System;using VodSDK;VodUploadClient client = new VodUploadClient("your secretId", "your secretKey");VodUploadRequest request = new VodUploadRequest();request.MediaFilePath = "/data/videos/Wildlife.wmv";request.CoverFilePath = "/data/videos/Wildlife.jpg";try{VodUploadResponse response = client.Upload("ap-guangzhou", request);// 打印媒体 FileIdConsole.WriteLine(response.FileId);}catch (Exception e){// 业务方进行异常处理Console.WriteLine(e);}
指定任务流
using System;using VodSDK;VodUploadClient client = new VodUploadClient("your secretId", "your secretKey");VodUploadRequest request = new VodUploadRequest();request.MediaFilePath = "/data/videos/Wildlife.wmv";request.Procedure = "Your Procedure Name";try{VodUploadResponse response = client.Upload("ap-guangzhou", request);// 打印媒体 FileIdConsole.WriteLine(response.FileId);}catch (Exception e){// 业务方进行异常处理Console.WriteLine(e);}
应用上传
using System;using VodSDK;VodUploadClient client = new VodUploadClient("your secretId", "your secretKey");VodUploadRequest request = new VodUploadRequest();request.MediaFilePath = "/data/videos/Wildlife.wmv";request.SubAppId = 101;try{VodUploadResponse response = client.Upload("ap-guangzhou", request);// 打印媒体 FileIdConsole.WriteLine(response.FileId);}catch (Exception e){// 业务方进行异常处理Console.WriteLine(e);}
指定存储地域
using System;using VodSDK;VodUploadClient client = new VodUploadClient("your secretId", "your secretKey");VodUploadRequest request = new VodUploadRequest();request.MediaFilePath = "/data/videos/Wildlife.wmv";request.StorageRegion = "ap-chongqing";try{VodUploadResponse response = client.Upload("ap-guangzhou", request);// 打印媒体 FileIdConsole.WriteLine(response.FileId);}catch (Exception e){// 业务方进行异常处理Console.WriteLine(e);}
接口描述
上传客户端类
VodUploadClient
属性名称 | 属性描述 | 类型 | 必填 |
secretId | 云 API 密钥 ID | String | 是 |
secretKey | 云 API 密钥 Key | String | 是 |
上传请求类
VodUploadRequest
属性名称 | 属性描述 | 类型 | 必填 |
MediaFilePath | 待上传的媒体文件路径。必须为本地路径,不支持 URL。 | String | 是 |
SubAppId | Integer | 否 | |
MediaType | String | 否 | |
MediaName | 上传后的媒体名称,若不填默认采用 MediaFilePath 的文件名。 | String | 否 |
CoverFilePath | 待上传的封面文件路径。必须为本地路径,不支持 URL。 | String | 否 |
CoverType | String | 否 | |
Procedure | String | 否 | |
ExpireTime | String | 否 | |
ClassId | Integer | 否 | |
SourceContext | 来源上下文,用于透传用户请求信息,上传回调接口将返回该字段值,最长250个字符。 | String | 否 |
StorageRegion | String | 否 |
上传响应类
VodUploadResponse
属性名称 | 属性描述 | 类型 |
FileId | 媒体文件的唯一标识。 | String |
MediaUrl | 媒体播放地址。 | String |
CoverUrl | 媒体封面地址。 | String |
RequestId | 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 | String |
上传方法
VodUploadClient.Upload(String region, VodUploadRequest request)
参数名称 | 参数描述 | 类型 | 必填 |
region | String | 是 | |
request | 上传请求。 | VodUploadRequest | 是 |
错误码表
状态码 | 含义 |
InternalError | 内部错误。 |
InvalidParameter.ExpireTime | 参数值错误:过期时间。 |
InvalidParameterValue.CoverType | 参数值错误:封面类型。 |
InvalidParameterValue.MediaType | 参数值错误:媒体类型。 |
InvalidParameterValue.SubAppId | 参数值错误:应用 ID。 |
InvalidParameterValue.VodSessionKey | 参数值错误:点播会话。 |
ResourceNotFound | 资源不存在。 |