.NET SDK使用说明

本文介绍视频直播服务端.NET SDK的使用方法和示例代码。

前提条件

  • 已安装.NET Framework 4.5或以上版本。

  • 已下载服务端.NET SDK,详细信息,请参见SDK下载

操作步骤

  1. 安装SDK。

    1. 在服务端.NET SDK下载页面复制视频直播产品适用于.NET 4.0及以上的DLL引用文件链接,在新窗口打开该链接即可下载DLL文件。详情请参见SDK下载

    2. 在Visual Studio解决方案资源管理器中右击您的项目,选择添加 > 引用

    3. 在应用管理器对话框中,单击浏览,选择已下载的DLL文件,单击添加

    4. 单击确定

  2. 创建一个名为config.ini的配置文件放在建议目录conf中,其中包含AK/SK信息。配置文件的内容如下:

    [default]
    access_key_id = YOUR_ACCESS_KEY_ID
    access_key_secret = YOUR_ACCESS_KEY_SECRET

    请将 YOUR_ACCESS_KEY_IDYOUR_ACCESS_KEY_SECRET 替换为您的实际AK/SK值。

    然后,可以使用以下C#代码读取配置文件并调用阿里云SDK。

  3. 创建并初始化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);
  4. 发起请求并处理应答或异常。

    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());
            }
        }
    }