本文介绍视频直播服务端.NET SDK的使用方法和示例代码。
前提条件
已安装.NET Framework 4.5或以上版本。
已下载服务端.NET SDK,详细信息,请参见SDK下载。
操作步骤
安装SDK。
在服务端.NET SDK下载页面复制视频直播产品适用于.NET 4.0及以上的DLL引用文件链接,在新窗口打开该链接即可下载DLL文件。详情请参见SDK下载。
在Visual Studio解决方案资源管理器中右击您的项目,选择添加 > 引用。
在应用管理器对话框中,单击浏览,选择已下载的DLL文件,单击添加。
单击确定。
创建一个名为config.ini的配置文件放在建议目录conf中,其中包含AK/SK信息。配置文件的内容如下:
[default] access_key_id = YOUR_ACCESS_KEY_ID access_key_secret = YOUR_ACCESS_KEY_SECRET
请将 YOUR_ACCESS_KEY_ID 和 YOUR_ACCESS_KEY_SECRET 替换为您的实际AK/SK值。
然后,可以使用以下C#代码读取配置文件并调用阿里云SDK。
创建并初始化DefaultAcsClient实例。
var config = new IniConfig(); config.Load(File.OpenRead("conf/config.ini")); // 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。 // 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。 // 本示例通过从配置文件中读取AccessKey,来实现API访问的身份验证。 var accessKeyId = config.Get("default", "access_key_id"); var accessKeySecret = config.Get("default", "access_key_secret"); // 创建 AcsClient 实例 var profile = DefaultProfile.GetProfile(<your-region-id>, accessKeyId, accessKeySecret); var client = new DefaultAcsClient(profile);
发起请求并处理应答或异常。
using System;
using System.IO;
using Aliyun.Acs.Core;
using Aliyun.Acs.Core.Exceptions;
using Aliyun.Acs.Core.Profile;
using Aliyun.Acs.Core.Retry;
using Aliyun.Acs.Core.Retry.Condition;
using Aliyun.Acs.Core.Transform;
using Aliyun.Acs.Core.Utils;
using Aliyun.Acs.live.Model.V20161101;
class TestProgram
{
static void Main(string[] args)
{
//构建一个Client,用于发起请求
var config = new IniConfig();
config.Load(File.OpenRead("conf/config.ini"));
// 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。
// 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。
// 本示例通过从配置文件中读取AccessKey,来实现API访问的身份验证。
var accessKeyId = config.Get("default", "access_key_id");
var accessKeySecret = config.Get("default", "access_key_secret");
// 创建 AcsClient 实例
var profile = DefaultProfile.GetProfile("cn-hangzhou", accessKeyId, accessKeySecret);
var client = new DefaultAcsClient(profile);
try
{
//构造请求
DescribeInstancesRequest request = new DescribeInstancesRequest();
request.PageSize = 10;
//发起请求,获取Response
DescribeInstancesResponse response = client.GetAcsResponse(request);
System.Console.WriteLine(response.TotalCount);
}
catch (ServerException ex)
{
System.Console.WriteLine(ex.ToString());
}
catch (ClientException ex)
{
System.Console.WriteLine(ex.ToString());
}
}
}