.NET SDK
阿里云API調(diào)試工具OpenAPI Explore提供OpenAPI文檔、API調(diào)試和SDK示例,幫助您快速入門API開發(fā)。本文介紹如何安裝和快速使用智能媒體管理.NET SDK。
前提條件
已創(chuàng)建并獲取AccessKey。具體操作,請參見創(chuàng)建AccessKey。
已開通OSS服務(wù)、創(chuàng)建存儲空間并上傳文件到存儲空間。具體操作,請參見控制臺上傳文件。
已開通智能媒體管理服務(wù)。具體操作,請參見開通產(chǎn)品。
已通過智能媒體管理控制臺創(chuàng)建項目。具體操作,請參見創(chuàng)建項目。
說明您也可以調(diào)用API接口創(chuàng)建項目。具體操作,請參見CreateProject - 創(chuàng)建項目。
您可以調(diào)用ListProjects - 列出所有項目信息的列表接口列出指定地域下已創(chuàng)建的所有項目信息。
安裝SDK
重要
調(diào)用2020-09-30版本的API,需要使用2020-09-30版本的SDK。
使用智能媒體管理.NET SDK的操作步驟請參見快速入門。
使用方法
編輯
Program.cs
。如下以在華東1(杭州)地域中檢測圖片中的人臉及人臉信息為例介紹如何使用智能媒體管理.NET SDK。說明復(fù)制使用如下示例代碼時請將訪問域名換成您的IMM項目所在Region的域名,并且IMM項目和OSS文件Region需要保持一致。
// This file is auto-generated, don't edit it. Thanks. using System; using System.Collections; using System.Collections.Generic; using System.IO; using System.Threading.Tasks; using Newtonsoft.Json; using Tea; using Tea.Utils; namespace AlibabaCloud.SDK.Sample { public class Sample { /** * 使用AK&SK初始化賬號Client * @return Client * @throws Exception */ public static AlibabaCloud.SDK.Imm20200930.Client CreateClient() { // 工程代碼泄露可能會導(dǎo)致 AccessKey 泄露,并威脅賬號下所有資源的安全性。以下代碼示例僅供參考。 // 建議使用更安全的 STS 方式,更多鑒權(quán)訪問方式請參見:http://m.bestwisewords.com/document_detail/378671.html。 AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config { // 必填,請確保代碼運(yùn)行環(huán)境設(shè)置了環(huán)境變量 ALIBABA_CLOUD_ACCESS_KEY_ID。 AccessKeyId = Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID"), // 必填,請確保代碼運(yùn)行環(huán)境設(shè)置了環(huán)境變量 ALIBABA_CLOUD_ACCESS_KEY_SECRET。 AccessKeySecret = Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET"), }; // Endpoint 請參考 https://api.aliyun.com/product/imm config.Endpoint = "imm.cn-beijing.aliyuncs.com"; return new AlibabaCloud.SDK.Imm20200930.Client(config); } public static void Main(string[] args) { AlibabaCloud.SDK.Imm20200930.Client client = CreateClient(); AlibabaCloud.SDK.Imm20200930.Models.DetectImageFacesRequest detectImageFacesRequest = new AlibabaCloud.SDK.Imm20200930.Models.DetectImageFacesRequest { ProjectName = "test", SourceURI = "oss://your-bucket-name/your-path/your-image.jpg", }; AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); try { // 復(fù)制代碼運(yùn)行請自行打印 API 的返回值 Console.WriteLine(JsonConvert.SerializeObject(client.DetectImageFacesWithOptions(detectImageFacesRequest, runtime).Body)); } catch (TeaException error) { // 此處僅做打印展示,請謹(jǐn)慎對待異常處理,在工程項目中切勿直接忽略異常。 // 錯誤 message Console.WriteLine(error.Message); // 診斷地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } catch (Exception _error) { TeaException error = new TeaException(new Dictionary<string, object> { { "message", _error.Message } }); // 此處僅做打印展示,請謹(jǐn)慎對待異常處理,在工程項目中切勿直接忽略異常。 // 錯誤 message Console.WriteLine(error.Message); // 診斷地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } } } }
執(zhí)行
csc /out:D:\Program.cs D:\Program.exe
編譯,運(yùn)行Program.exe輸出結(jié)果如下。{ "RequestId": "2CCA6D7E-C9FB-5C87-8AC5-D6E6AC493096", "Faces": [ { "Beard": "none", "MaskConfidence": 0.83, "Gender": "female", "Boundary": { "Left": 81, "Top": 62, "Height": 127, "Width": 96 }, "BeardConfidence": 1, "FigureId": "0fccc5f9-22df-4507-ac53-f6a37f11a15a", "Mouth": "open", "Emotion": "happiness", "Age": 25, "MouthConfidence": 0.998, "FigureType": "face", "GenderConfidence": 1, "HeadPose": { "Pitch": -27.196, "Roll": 6.075, "Yaw": 3.477 }, "Mask": "none", "EmotionConfidence": 0.999, "HatConfidence": 1, "GlassesConfidence": 1, "Sharpness": 1, "FigureClusterId": "figure-cluster-id-unavailable", "FaceQuality": 0.998, "Attractive": 0.998, "AgeSD": 7, "Glasses": "none", "FigureConfidence": 0.999, "Hat": "none" } ] }
文檔內(nèi)容是否對您有幫助?