全部產品
Search
文件中心

Image Search:.Net SDK

更新時間:Feb 05, 2024

本文介紹Image Search服務.Net SDK的使用方法及樣本。

介面列表

介面名稱

介面說明

Add

增加圖片。

SearchImageByPic

使用圖片進行搜尋。

SearchImageByName

指定名稱,使用已入庫的圖片進行搜尋。

Delete

刪除圖片。

UpdateImage

修改圖片。

Detail

查詢執行個體資訊。

DumpMeta

元資訊匯出任務。

DumpMetaList

元資訊匯出工作清單。

BatchTask

批量任務。

BatchTaskList

批量工作清單。

準備工作

在安裝和使用阿里雲SDK前,確保您已經註冊阿里雲帳號並產生存取金鑰(AccessKey)。詳情請參見建立AccessKey

  1. 在方案總管面板中,按右鍵您的專案,選擇NuGet程式包菜單管理

  2. 在開啟的NuGet管理面板中單擊瀏覽選項卡,輸入AlibabaCloud.SDK.ImageSearch20201214

  3. 單擊安裝

Add介面

  • 程式碼範例

    using AlibabaCloud.OpenApiClient.Models;
    using AlibabaCloud.SDK.ImageSearch20201214.Models;
    using AlibabaCloud.SDK.ImageSearch20201214;
    using AlibabaCloud.TeaUtil.Models;
    using System;
    using System.IO;
    namespace Test
    {
        class Add
        {
            static void Main(string[] args)
            {
                // Console.WriteLine("Hello World!");
                // 建立AK/SK參考:https://www.alibabacloud.com/help/zh/resource-access-management/latest/accesskey-pairs-create-an-accesskey-pair-for-a-ram-user
                Config config = new Config();
                //阿里雲帳號AccessKey擁有所有API的存取權限,建議您使用RAM使用者進行API訪問或日常營運。
                //強烈建議不要把AccessKey ID和AccessKey Secret儲存到工程代碼裡,否則可能導致AccessKey泄露,威脅您帳號下所有資源的安全。
                //本樣本以將AccessKey ID和AccessKey Secret儲存在環境變數為例說明。您也可以根據業務需要,儲存到設定檔裡。
                IDictionary environmentVariables = Environment.GetEnvironmentVariables();
                foreach (DictionaryEntry de in environmentVariables)
                {
                    if (de.Key.Equals("CC_AK_ENV")) {
                        config.AccessKeyId = (string)de.Value;
                    }
                    if (de.Key.Equals("CC_SK_ENV"))
                    {
                        config.AccessKeySecret = (string)de.Value;
                    }
                }
                config.Endpoint = "imagesearch.cn-shanghai.aliyuncs.com";
                config.RegionId = "cn-shanghai";
                config.Type = "access_key"; 
    
                // 以下為內網(VPC)訪問方式
                // 說明:內網(VPC)訪問:僅限同地區ECS或資源的訪問,例如您購買的Image Search執行個體是華東2(上海),那麼您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與Image Search是否在同一個地區。
                // config.EndpointType = "internal";  // 如果是內網訪問Image Search服務,則endpointType為必填項,值統一為"internal"
                // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內網訪問(VPC)地址,請您更換為您購買執行個體的地區,例如您購買執行個體的地區為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com"
                
                Client client = new Client(config);
                FileStream fs = File.OpenRead("D:/111.jpg");
                AddImageAdvanceRequest request = new AddImageAdvanceRequest();
                // 必填,圖片名稱,最多支援 512個字元。
                 // 1. ProductId + PicName唯一確定一張圖片。
               // 2. 如果多次添加圖片具有相同的ProductId + PicName,以最後一次添加為準,前面添加的圖片將被覆蓋
                request.PicName = "xusong.jpg";
                // 必填,商品id,最多支援 512個字元。
                // 一個商品可有多張圖片。
                request.ProductId = "1001";
                // 必填,Image Search執行個體名稱。注意是執行個體名稱不是執行個體ID。購買後通過上雲層管控台執行個體資訊一欄查看:https://imagesearch.console.aliyun.com/overview
                request.InstanceName = "XXXXXXXXXXXXXXXXXXXXXXXXX";
                // 圖片內容,最多支援 4MB大小圖片以及5s的傳輸等待時間。當前僅支援PNG、JPG、JPEG、BMP、GIF、WEBP、TIFF、PPM格式圖片;
                // 對於商品、通用圖片搜尋,圖片長和寬的像素必須都大於等於100且小於等於4096;
                 // 對於布料搜尋,圖片長和寬的像素必須都大於等於448且小於等於4096;
                // 映像中不能帶有旋轉資訊
                request.PicContentObject = fs;
                // 選填,整數類型屬性,可用於查詢時過濾,查詢時會返回該欄位。
                //  例如不同的網站的圖片/不同使用者的圖片,可以設定不同的IntAttr,查詢時通過過濾來達到隔離的目的
                request.IntAttr = 99;
                 // 選填,字串類型屬性,最多支援 128個字元。可用於查詢時過濾,查詢時會返回該欄位。
                request.StrAttr = "aliyun.com";
                // 選填,圖片類目。
                // 1. 對於商品搜尋:若設定類目,則以設定的為準;若不設定類目,將由系統進行類目預測,預測的類目結果可在Response中擷取 。
                // 2. 對於通用搜尋:不論是否設定類目,系統會將類目設定為88888888。
                request.CategoryId = 5;
                // 選填,是否需要進行主體識別,預設為true。
               // 1.為true時,由系統進行主體識別,以識別的主體進行搜尋,主體識別結果可在Response中擷取。
                //  設定的region 地區不要超過圖片的邊界。
               // 2. 為false時,則不進行主體識別,以整張圖進行搜尋。
                request.Crop = true;
                // 選填,圖片的主體地區,格式為 x1,x2,y1,y2, 其中 x1,y1 是左上方的點,x2,y2是右下角的點。
               // 若使用者佈建了Region,則不論Crop參數為何值,都將以使用者輸入Region進行搜尋。
                request.Region = "66,333,97,356";
                RuntimeOptions runtimeObject = new RuntimeOptions();
                try
                {
                    AddImageResponse response = client.AddImageAdvance(request, runtimeObject);
                    Console.WriteLine("result:" + Newtonsoft.Json.JsonConvert.SerializeObject(response));
                }
                catch (TeaUnretryableException e)
                {
                    Console.WriteLine("InnerException結果:" + e.InnerException.Message);
                    Console.WriteLine("Data結果:" + e.Data);
                    Console.WriteLine("Message結果:" + e.Message);
                    Console.WriteLine("列印String:" + e.ToString());
                }
            }
        }
    }
  • 結果樣本

    result:{"Headers":{"date":"Mon, 11 Jan 2021 06:57:16 GMT","connection":"keep-alive","access-control-allow-origin":"*","access-control-allow-methods":"POST, GET, OPTIONS","access-control-allow-headers":"X-Requested-With, X-Sequence, _aop_secret, _aop_signature","access-control-max-age":"172800","x-acs-request-id":"6D32C931-D584-4927-938A-6053AE9B630D"},"Body":{"Message":"success","RequestId":"6D32C931-D584-4927-938A-6053AE9B630D","Code":0,"PicInfo":{"Region":"112,440,76,387","CategoryId":88888888},"Success":true}}

SearchImageByPic介面

  • 程式碼範例

    using AlibabaCloud.OpenApiClient.Models;
    using AlibabaCloud.SDK.ImageSearch20201214.Models;
    using AlibabaCloud.SDK.ImageSearch20201214;
    using AlibabaCloud.TeaUtil.Models;
    using System;
    using System.IO;
    namespace Test
    {
        class SearchImageByPic
        {
            static void Main(string[] args)
            {
                Config config = new Config();
                // 建立AK/SK參考:https://www.alibabacloud.com/help/zh/resource-access-management/latest/accesskey-pairs-create-an-accesskey-pair-for-a-ram-user
                //阿里雲帳號AccessKey擁有所有API的存取權限,建議您使用RAM使用者進行API訪問或日常營運。
                //強烈建議不要把AccessKey ID和AccessKey Secret儲存到工程代碼裡,否則可能導致AccessKey泄露,威脅您帳號下所有資源的安全。
                //本樣本以將AccessKey ID和AccessKey Secret儲存在環境變數為例說明。您也可以根據業務需要,儲存到設定檔裡。
                IDictionary environmentVariables = Environment.GetEnvironmentVariables();
                foreach (DictionaryEntry de in environmentVariables)
                {
                    if (de.Key.Equals("CC_AK_ENV")) {
                        config.AccessKeyId = (string)de.Value;
                    }
                    if (de.Key.Equals("CC_SK_ENV"))
                    {
                        config.AccessKeySecret = (string)de.Value;
                    }
                }
                config.Endpoint = "imagesearch.cn-shanghai.aliyuncs.com";
                config.RegionId = "cn-shanghai";
                config.Type = "access_key";
    
                // 以下為內網(VPC)訪問方式
                // 說明:內網(VPC)訪問:僅限同地區ECS或資源的訪問,例如您購買的Image Search執行個體是華東2(上海),那麼您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與Image Search是否在同一個地區。
                // config.EndpointType = "internal";  // 如果是內網訪問Image Search服務,則endpointType為必填項,值統一為"internal"
                // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內網訪問(VPC)地址,請您更換為您購買執行個體的地區,例如您購買執行個體的地區為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com"
                
                Client client = new Client(config);
                FileStream fs = File.OpenRead("D:/123.jpg");
                SearchImageByPicAdvanceRequest request = new SearchImageByPicAdvanceRequest();
                // 選填,商品類目。
                // 1. 對於商品搜尋:若設定類目,則以設定的為準;若不設定類目,將由系統進行類目預測,預測的類目結果可在Response中擷取 。
                // 2. 對於通用搜尋:不論是否設定類目,系統會將類目設定為88888888。
                request.CategoryId = 5;
                // 圖片內容,最多支援 4MB大小圖片以及5s的傳輸等待時間。當前僅支援PNG、JPG、JPEG、BMP、GIF、WEBP、TIFF、PPM格式圖片;
                // 對於商品、商標、通用圖片搜尋,圖片長和寬的像素必須都大於等於100且小於等於4096;        
                // 對於布料搜尋,圖片長和寬的像素必須都大於等於448且小於等於4096;        
                // 映像中不能帶有旋轉資訊
                request.PicContentObject = fs;
                // 選填,是否需要進行主體識別,預設為true。
                // 1.為true時,由系統進行主體識別,以識別的主體進行搜尋,主體識別結果可在Response中擷取。
                // 2. 為false時,則不進行主體識別,以整張圖進行搜尋。
                request.Crop = true;
                // 選填,過濾條件
                // int_attr支援的操作符有>、>=、<、<=、=,str_attr支援的操作符有=和!=,多個條件之支援AND和OR進行串連。
                // 樣本:
                //1. 根據IntAttr過濾結果,int_attr>=100
                //2. 根據StrAttr過濾結果,str_attr!="value1"
                //3. 根據IntAttr和StrAttr聯合過濾結果,int_attr=1000 AND str_attr="value1"
                request.Filter = "int_attr=99";
                // 選填,圖片的主體地區,格式為 x1,x2,y1,y2, 其中 x1,y1 是左上方的點,x2,y2是右下角的點。
                //  設定的region 地區不要超過圖片的邊界。
                // 若使用者佈建了Region,則不論Crop參數為何值,都將以使用者輸入Region進行搜尋。
                request.Region = "66,333,98,356";
                // 必填,Image Search執行個體名稱。注意是執行個體名稱不是執行個體ID。購買後通過上雲層管控台執行個體資訊一欄查看:https://imagesearch.console.aliyun.com/overview
                request.InstanceName = "XXXXXX";
                RuntimeOptions runtimeObject = new RuntimeOptions();
                try
                {
                    SearchImageByPicResponse response = client.SearchImageByPicAdvance(request, runtimeObject);
                    String result = Newtonsoft.Json.JsonConvert.SerializeObject(response);
                    Console.WriteLine("result:" + result);
                    }
                catch (TeaUnretryableException e)
                {
                    Console.WriteLine("InnerException結果:" + e.InnerException.Message);
                    Console.WriteLine("Data結果:" + e.Data);
                    Console.WriteLine("Message結果:" + e.Message);
                    Console.WriteLine("列印String:" + e.ToString());
                }
            }
        }
    }
  • 結果樣本

    result:
    {
        "RequestId":"632814A0-F34D-46FB-882D-81D74E7C3290",
        "Success":true,
        "Code":0,
        "Msg":"success",
        "Auctions":[
            {
                "CategoryId":0,
                "ProductId":"test",
                "PicName":"test.jpg",
                "CustomContent":null,
                "Score":1.0
                "SortExprValues":"7.33136443711219;0",
                "IntAttr":null,
                "StrAttr":null
            },
            {......}
            ],
        "Head":{
            "DocsReturn":4,
            "DocsFound":4,
            "SearchTime":155
        },
        "PicInfo":{
            "CategoryId":0,
            "Region":"202,596,155,637",
            "AllCategories":[{"Id":0,"Name":"Tops"},{.....}],
            "MultiRegion":[
                {"Region":"112,440,76,387"}
            ]
         }
    }

SearchImageByName介面

  • 程式碼範例

    using AlibabaCloud.OpenApiClient.Models;
    using AlibabaCloud.SDK.ImageSearch20201214.Models;
    using AlibabaCloud.SDK.ImageSearch20201214;
    using AlibabaCloud.TeaUtil.Models;
    using System;
    using System.IO;
    namespace Test
    {
        class SearchImageByName
        {
            static void Main(string[] args)
            {
                Config config = new Config();
                // 建立AK/SK參考:https://www.alibabacloud.com/help/zh/resource-access-management/latest/accesskey-pairs-create-an-accesskey-pair-for-a-ram-user
                //阿里雲帳號AccessKey擁有所有API的存取權限,建議您使用RAM使用者進行API訪問或日常營運。
                //強烈建議不要把AccessKey ID和AccessKey Secret儲存到工程代碼裡,否則可能導致AccessKey泄露,威脅您帳號下所有資源的安全。
                //本樣本以將AccessKey ID和AccessKey Secret儲存在環境變數為例說明。您也可以根據業務需要,儲存到設定檔裡。
                IDictionary environmentVariables = Environment.GetEnvironmentVariables();
                foreach (DictionaryEntry de in environmentVariables)
                {
                    if (de.Key.Equals("CC_AK_ENV")) {
                        config.AccessKeyId = (string)de.Value;
                    }
                    if (de.Key.Equals("CC_SK_ENV"))
                    {
                        config.AccessKeySecret = (string)de.Value;
                    }
                }
                config.Endpoint = "imagesearch.cn-shanghai.aliyuncs.com";
                config.RegionId = "cn-shanghai";
                config.Type = "access_key";
    
                // 以下為內網(VPC)訪問方式
                // 說明:內網(VPC)訪問:僅限同地區ECS或資源的訪問,例如您購買的Image Search執行個體是華東2(上海),那麼您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與Image Search是否在同一個地區。
                // config.EndpointType = "internal";  // 如果是內網訪問Image Search服務,則endpointType為必填項,值統一為"internal"
                // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內網訪問(VPC)地址,請您更換為您購買執行個體的地區,例如您購買執行個體的地區為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com"
    
                Client client = new Client(config);            
                SearchImageByNameRequest request = new SearchImageByNameRequest();
                // 選填,商品類目。
                // 1. 對於商品搜尋:若設定類目,則以設定的為準;若不設定類目,將由系統進行類目預測,預測的類目結果可在Response中擷取 。
                // 2. 對於通用搜尋:不論是否設定類目,系統會將類目設定為88888888。
                request.CategoryId = 5;
                // 必填,Image Search執行個體名稱。注意是執行個體名稱不是執行個體ID。購買後通過上雲層管控台執行個體資訊一欄查看:https://imagesearch.console.aliyun.com/overview
                request.InstanceName = "XXXXXXXXXX";
                // 必填,圖片名稱,最多支援 512個字元。
                // 1. ProductId + PicName唯一確定一張圖片
                request.PicName = "xusong.jpg";
                // 必填,商品id,最多支援 512個字元。
                // 一個商品可有多張圖片。
                request.ProductId = "1001";
                try
                {
                    SearchImageByNameResponse response = client.SearchImageByName(request);
                    String result = Newtonsoft.Json.JsonConvert.SerializeObject(response);
                    Console.WriteLine("result:" + result);
                }
                catch (TeaUnretryableException e)
                {
                    Console.WriteLine("InnerException結果:" + e.InnerException.Message);
                    Console.WriteLine("Data結果:" + e.Data);
                    Console.WriteLine("Message結果:" + e.Message);
                    Console.WriteLine("列印String:" + e.ToString());
                }
            }
        }
    }
  • 結果樣本

    result:
    {
        "RequestId":"5B16E5CD-FE8A-4A4E-A90B-02A5C9F8BD81",
        "Success":true,
        "Code":0,
        "Msg":"success",
        "Auctions":[
            {
                "CategoryId":0,
                "ProductId":"test",
                "PicName":"test.jpg",
                "CustomContent":null,
                "Score":1.0
                "SortExprValues":"7.33136443711219;0",
                "IntAttr":null,
                "StrAttr":null
            },
            {....}
        ],
        "Head":{
            "DocsReturn":4,
            "DocsFound":4,
            "SearchTime":50
        },
        "PicInfo":{
            "CategoryId":0,
            "Region":null,
            "AllCategories":[
                {"Id":0,"Name":"Tops"},
                {...}
            ],
           "MultiRegion":[
                {"Region":"112,440,76,387"}
           ]
        }
    }

Delete介面

  • 程式碼範例

    using AlibabaCloud.OpenApiClient.Models;
    using AlibabaCloud.SDK.ImageSearch20201214.Models;
    using AlibabaCloud.SDK.ImageSearch20201214;
    using AlibabaCloud.TeaUtil.Models;
    using System;
    using System.IO;
    namespace Test
    {
        class Delete
        {
            static void Main(string[] args)
            {
                Config config = new Config();
                // 建立AK/SK參考:https://www.alibabacloud.com/help/zh/resource-access-management/latest/accesskey-pairs-create-an-accesskey-pair-for-a-ram-user
                //阿里雲帳號AccessKey擁有所有API的存取權限,建議您使用RAM使用者進行API訪問或日常營運。
                //強烈建議不要把AccessKey ID和AccessKey Secret儲存到工程代碼裡,否則可能導致AccessKey泄露,威脅您帳號下所有資源的安全。
                //本樣本以將AccessKey ID和AccessKey Secret儲存在環境變數為例說明。您也可以根據業務需要,儲存到設定檔裡。
                IDictionary environmentVariables = Environment.GetEnvironmentVariables();
                foreach (DictionaryEntry de in environmentVariables)
                {
                    if (de.Key.Equals("CC_AK_ENV")) {
                        config.AccessKeyId = (string)de.Value;
                    }
                    if (de.Key.Equals("CC_SK_ENV"))
                    {
                        config.AccessKeySecret = (string)de.Value;
                    }
                }
                config.Endpoint = "imagesearch.cn-shanghai.aliyuncs.com";
                config.RegionId = "cn-shanghai";
                config.Type = "access_key";
    
                // 以下為內網(VPC)訪問方式
                // 說明:內網(VPC)訪問:僅限同地區ECS或資源的訪問,例如您購買的Image Search執行個體是華東2(上海),那麼您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與Image Search是否在同一個地區。
                // config.EndpointType = "internal";  // 如果是內網訪問Image Search服務,則endpointType為必填項,值統一為"internal"
                // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內網訪問(VPC)地址,請您更換為您購買執行個體的地區,例如您購買執行個體的地區為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com"
    
                Client client = new Client(config);
                DeleteImageRequest request = new DeleteImageRequest();
                // 必填,Image Search執行個體名稱。注意是執行個體名稱不是執行個體ID。購買後通過上雲層管控台執行個體資訊一欄查看:https://imagesearch.console.aliyun.com/overview
                request.InstanceName = "XXXXXXXXXXX";
                // 必填,圖片名稱,最多支援 512個字元。
                // 1. ProductId + PicName唯一確定一張圖片。
                request.PicName = "xusong.jpg";
                //  選填,圖片名稱。若不指定本參數,則刪除ProductId下所有圖片;若指定本參數,則刪除ProductId+PicName指定的圖片。
                request.ProductId = "1001";
                try
                {
                    DeleteImageResponse response = client.DeleteImage(request);
                    Console.WriteLine("RequestId:" + response.Body.RequestId);
                    Console.WriteLine("Message:" + response.Body.Message);
                    Console.WriteLine("Code:" + response.Body.Code);
                }
                catch (TeaUnretryableException e)
                {
                    Console.WriteLine("InnerException結果:" + e.InnerException.Message);
                    Console.WriteLine("Data結果:" + e.Data);
                    Console.WriteLine("Message結果:" + e.Message);
                    Console.WriteLine("列印String:" + e.ToString());
                }
            }
        }
    }
  • 結果樣本

    RequestId:D9BDEAE0-674C-4126-9D76-A79F0BE9E881
    Message:success
    Code:0

UpdateImage介面

  • 程式碼範例

    using AlibabaCloud.OpenApiClient.Models;
    using AlibabaCloud.SDK.ImageSearch20201214.Models;
    using AlibabaCloud.SDK.ImageSearch20201214;
    using AlibabaCloud.TeaUtil.Models;
    using System;
    using System.IO;
    namespace Test
    {
        class UpdateImage
        {
            static void Main(string[] args)
            {
                Config config = new Config();
                // 建立AK/SK參考:https://www.alibabacloud.com/help/zh/resource-access-management/latest/accesskey-pairs-create-an-accesskey-pair-for-a-ram-user
                //阿里雲帳號AccessKey擁有所有API的存取權限,建議您使用RAM使用者進行API訪問或日常營運。
                //強烈建議不要把AccessKey ID和AccessKey Secret儲存到工程代碼裡,否則可能導致AccessKey泄露,威脅您帳號下所有資源的安全。
                //本樣本以將AccessKey ID和AccessKey Secret儲存在環境變數為例說明。您也可以根據業務需要,儲存到設定檔裡。
                IDictionary environmentVariables = Environment.GetEnvironmentVariables();
                foreach (DictionaryEntry de in environmentVariables)
                {
                    if (de.Key.Equals("CC_AK_ENV")) {
                        config.AccessKeyId = (string)de.Value;
                    }
                    if (de.Key.Equals("CC_SK_ENV"))
                    {
                        config.AccessKeySecret = (string)de.Value;
                    }
                }
                config.Endpoint = "imagesearch.cn-shanghai.aliyuncs.com";
                config.RegionId = "cn-shanghai";
                config.Type = "access_key";
    
                // 以下為內網(VPC)訪問方式
                // 說明:內網(VPC)訪問:僅限同地區ECS或資源的訪問,例如您購買的Image Search執行個體是華東2(上海),那麼您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與Image Search是否在同一個地區。
                // config.EndpointType = "internal";  // 如果是內網訪問Image Search服務,則endpointType為必填項,值統一為"internal"
                // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內網訪問(VPC)地址,請您更換為您購買執行個體的地區,例如您購買執行個體的地區為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com"
    
                Client client = new Client(config);
                UpdateImageRequest request = new UpdateImageRequest();
                // 必填,Image Search執行個體名稱。注意是執行個體名稱不是執行個體ID。購買後通過上雲層管控台執行個體資訊一欄查看:https://imagesearch.console.aliyun.com/overview
                request.InstanceName = "XXXXXXXXXXX";
                // 必填,商品ID 不可修改。
                request.ProductId = "1";
                // 必填,圖片名稱,不可修改。
                request.PicName = "1";
                // 選填,整數類型屬性,可用於查詢時過濾,查詢時會返回該欄位。
                request.IntAttr = 1;
                // 選填,字串類型屬性,最多支援 128個字元。可用於查詢時過濾,查詢時會返回該欄位。
                request.StrAttr = "test";
                // 選填,使用者自訂的內容,最多支援4096個字元。
                request.CustomContent ="這是一個測試說明";
                try
                {
                    UpdateImageResponse response = client.UpdateImage(request);
                    String result = Newtonsoft.Json.JsonConvert.SerializeObject(response.Body);
                    Console.WriteLine("result:" + result);
                }
                catch (TeaUnretryableException e)
                {
                    Console.WriteLine("InnerException結果:" + e.InnerException.Message);
                    Console.WriteLine("Data結果:" + e.Data);
                    Console.WriteLine("Message結果:" + e.Message);
                    Console.WriteLine("列印String:" + e.ToString());
                }
            }
        }
    }
  • 結果樣本

    result:{"Code":0,"Message":null,"RequestId":"4F66A9C0-9D36-152A-B5DB-C0B3624D3331","Success":true}

Detail介面

  • 程式碼範例

    using AlibabaCloud.OpenApiClient.Models;
    using AlibabaCloud.SDK.ImageSearch20201214.Models;
    using AlibabaCloud.SDK.ImageSearch20201214;
    using AlibabaCloud.TeaUtil.Models;
    using System;
    using System.IO;
    namespace Test
    {
        class Detail
        {
            static void Main(string[] args)
            {
                Config config = new Config();
                // 建立AK/SK參考:https://www.alibabacloud.com/help/zh/resource-access-management/latest/accesskey-pairs-create-an-accesskey-pair-for-a-ram-user
                //阿里雲帳號AccessKey擁有所有API的存取權限,建議您使用RAM使用者進行API訪問或日常營運。
                //強烈建議不要把AccessKey ID和AccessKey Secret儲存到工程代碼裡,否則可能導致AccessKey泄露,威脅您帳號下所有資源的安全。
                //本樣本以將AccessKey ID和AccessKey Secret儲存在環境變數為例說明。您也可以根據業務需要,儲存到設定檔裡。
                IDictionary environmentVariables = Environment.GetEnvironmentVariables();
                foreach (DictionaryEntry de in environmentVariables)
                {
                    if (de.Key.Equals("CC_AK_ENV")) {
                        config.AccessKeyId = (string)de.Value;
                    }
                    if (de.Key.Equals("CC_SK_ENV"))
                    {
                        config.AccessKeySecret = (string)de.Value;
                    }
                }
                config.Endpoint = "imagesearch.cn-shanghai.aliyuncs.com";
                config.RegionId = "cn-shanghai";
                config.Type = "access_key";
    
                // 以下為內網(VPC)訪問方式
                // 說明:內網(VPC)訪問:僅限同地區ECS或資源的訪問,例如您購買的Image Search執行個體是華東2(上海),那麼您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與Image Search是否在同一個地區。
                // config.EndpointType = "internal";  // 如果是內網訪問Image Search服務,則endpointType為必填項,值統一為"internal"
                // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內網訪問(VPC)地址,請您更換為您購買執行個體的地區,例如您購買執行個體的地區為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com"
    
                Client client = new Client(config);
                DetailRequest request = new DetailRequest();
                // 必填,Image Search執行個體名稱。注意是執行個體名稱不是執行個體ID。購買後通過上雲層管控台執行個體資訊一欄查看:https://imagesearch.console.aliyun.com/overview
                request.InstanceName = "XXXXXXXXXXX";
                try
                {
                    DetailResponse response = client.Detail(request);
                    String result = Newtonsoft.Json.JsonConvert.SerializeObject(response.Body);
                    Console.WriteLine("result:" + result);
                }
                catch (TeaUnretryableException e)
                {
                    Console.WriteLine("InnerException結果:" + e.InnerException.Message);
                    Console.WriteLine("Data結果:" + e.Data);
                    Console.WriteLine("Message結果:" + e.Message);
                    Console.WriteLine("列印String:" + e.ToString());
                }
            }
        }
    }
  • 結果樣本

    {
      RequestId=046913C5-942A-1DD2-959F-7CECD790ADB2,
      Instance={
        UtcExpireTime=1649692800000,
        TotalCount=225320,
        UtcCreate=1633936585000,
        Capacity=250,
        Qps=5,
        ServiceType=0,
        Region=cn-shanghai,
        Name=xxxx
      },
      Success=true
    }

DumpMeta介面

  • 程式碼範例

    using AlibabaCloud.OpenApiClient.Models;
    using AlibabaCloud.SDK.ImageSearch20201214.Models;
    using AlibabaCloud.SDK.ImageSearch20201214;
    using AlibabaCloud.TeaUtil.Models;
    using System;
    using System.IO;
    namespace Test
    {
        class DumpMeta
        {
            static void Main(string[] args)
            {
                Config config = new Config();
                // 建立AK/SK參考:https://www.alibabacloud.com/help/zh/resource-access-management/latest/accesskey-pairs-create-an-accesskey-pair-for-a-ram-user
                //阿里雲帳號AccessKey擁有所有API的存取權限,建議您使用RAM使用者進行API訪問或日常營運。
                //強烈建議不要把AccessKey ID和AccessKey Secret儲存到工程代碼裡,否則可能導致AccessKey泄露,威脅您帳號下所有資源的安全。
                //本樣本以將AccessKey ID和AccessKey Secret儲存在環境變數為例說明。您也可以根據業務需要,儲存到設定檔裡。
                IDictionary environmentVariables = Environment.GetEnvironmentVariables();
                foreach (DictionaryEntry de in environmentVariables)
                {
                    if (de.Key.Equals("CC_AK_ENV")) {
                        config.AccessKeyId = (string)de.Value;
                    }
                    if (de.Key.Equals("CC_SK_ENV"))
                    {
                        config.AccessKeySecret = (string)de.Value;
                    }
                }
                config.Endpoint = "imagesearch.cn-shanghai.aliyuncs.com";
                config.RegionId = "cn-shanghai";
                config.Type = "access_key";
    
                // 以下為內網(VPC)訪問方式
                // 說明:內網(VPC)訪問:僅限同地區ECS或資源的訪問,例如您購買的Image Search執行個體是華東2(上海),那麼您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與Image Search是否在同一個地區。
                // config.EndpointType = "internal";  // 如果是內網訪問Image Search服務,則endpointType為必填項,值統一為"internal"
                // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內網訪問(VPC)地址,請您更換為您購買執行個體的地區,例如您購買執行個體的地區為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com"
    
                Client client = new Client(config);
                DumpMetaRequest request = new DumpMetaRequest();
                // 必填,Image Search執行個體名稱。注意是執行個體名稱不是執行個體ID。購買後通過上雲層管控台執行個體資訊一欄查看:https://imagesearch.console.aliyun.com/overview
                request.InstanceName = "XXXXXXXXXXX";
                try
                {
                    DumpMetaResponse response = client.DumpMeta(request);
                    String result = Newtonsoft.Json.JsonConvert.SerializeObject(response.Body);
                    Console.WriteLine("result:" + result);
                }
                catch (TeaUnretryableException e)
                {
                    Console.WriteLine("InnerException結果:" + e.InnerException.Message);
                    Console.WriteLine("Data結果:" + e.Data);
                    Console.WriteLine("Message結果:" + e.Message);
                    Console.WriteLine("列印String:" + e.ToString());
                }
            }
        }
    }
  • 結果樣本

    {
      RequestId=FC4191AA-1D5B-1001-9A70-18FBB2BD265B,
      Data={
        DumpMetaStatus=PROCESSING,
        Id=567
      },
      Success=true
    }

DumpMetaList介面

  • 程式碼範例

    using AlibabaCloud.OpenApiClient.Models;
    using AlibabaCloud.SDK.ImageSearch20201214.Models;
    using AlibabaCloud.SDK.ImageSearch20201214;
    using AlibabaCloud.TeaUtil.Models;
    using System;
    using System.IO;
    namespace Test
    {
        class DumpMetaList
        {
            static void Main(string[] args)
            {
                Config config = new Config();
                // 建立AK/SK參考:https://www.alibabacloud.com/help/zh/resource-access-management/latest/accesskey-pairs-create-an-accesskey-pair-for-a-ram-user
                //阿里雲帳號AccessKey擁有所有API的存取權限,建議您使用RAM使用者進行API訪問或日常營運。
                //強烈建議不要把AccessKey ID和AccessKey Secret儲存到工程代碼裡,否則可能導致AccessKey泄露,威脅您帳號下所有資源的安全。
                //本樣本以將AccessKey ID和AccessKey Secret儲存在環境變數為例說明。您也可以根據業務需要,儲存到設定檔裡。
                IDictionary environmentVariables = Environment.GetEnvironmentVariables();
                foreach (DictionaryEntry de in environmentVariables)
                {
                    if (de.Key.Equals("CC_AK_ENV")) {
                        config.AccessKeyId = (string)de.Value;
                    }
                    if (de.Key.Equals("CC_SK_ENV"))
                    {
                        config.AccessKeySecret = (string)de.Value;
                    }
                }
                config.Endpoint = "imagesearch.cn-shanghai.aliyuncs.com";
                config.RegionId = "cn-shanghai";
                config.Type = "access_key";
    
                // 以下為內網(VPC)訪問方式
                // 說明:內網(VPC)訪問:僅限同地區ECS或資源的訪問,例如您購買的Image Search執行個體是華東2(上海),那麼您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與Image Search是否在同一個地區。
                // config.EndpointType = "internal";  // 如果是內網訪問Image Search服務,則endpointType為必填項,值統一為"internal"
                // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內網訪問(VPC)地址,請您更換為您購買執行個體的地區,例如您購買執行個體的地區為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com"
    
                Client client = new Client(config);
                DumpMetaListRequest request = new DumpMetaListRequest();
                // 必填,Image Search執行個體名稱。注意是執行個體名稱不是執行個體ID。購買後通過上雲層管控台執行個體資訊一欄查看:https://imagesearch.console.aliyun.com/overview
                request.InstanceName = "XXXXXXXXXXX";
                // 選填,中繼資料匯出任務id。
                request.Id = 567;
                // 選填,返回結果起始位置,預設1。
                request.PageNumber = 1;
                // 選填,返回結果數量,預設20。
                request.PageSize = 1;
                try
                {
                    DumpMetaListResponse response = client.DumpMetaList(request);
                    String result = Newtonsoft.Json.JsonConvert.SerializeObject(response.Body);
                    Console.WriteLine("result:" + result);
                }
                catch (TeaUnretryableException e)
                {
                    Console.WriteLine("InnerException結果:" + e.InnerException.Message);
                    Console.WriteLine("Data結果:" + e.Data);
                    Console.WriteLine("Message結果:" + e.Message);
                    Console.WriteLine("列印String:" + e.ToString());
                }
            }
        }
    }
  • 結果樣本

    {
      RequestId=850DFBD9-A179-12FB-B193-2D08ACEA586B,
      Data={
        TotalCount=1,
        PageSize=1,
        PageNumber=1,
        DumpMetaList=[
          {
            Status=SUCCESS,
            Msg=success,
            MetaUrl=https: //****.com/x?Expires=x,
            UtcCreate=1639969113000,
            UtcModified=1639969140000,
            Id=567,
            Code=0
          }
        ]
      }
    }

BatchTask介面

  • 程式碼範例

                // 建立AK/SK參考:https://www.alibabacloud.com/help/zh/resource-access-management/latest/accesskey-pairs-create-an-accesskey-pair-for-a-ram-user
                //阿里雲帳號AccessKey擁有所有API的存取權限,建議您使用RAM使用者進行API訪問或日常營運。
                //強烈建議不要把AccessKey ID和AccessKey Secret儲存到工程代碼裡,否則可能導致AccessKey泄露,威脅您帳號下所有資源的安全。
                //本樣本以將AccessKey ID和AccessKey Secret儲存在環境變數為例說明。您也可以根據業務需要,儲存到設定檔裡。
                IDictionary environmentVariables = Environment.GetEnvironmentVariables();
                foreach (DictionaryEntry de in environmentVariables)
                {
                    if (de.Key.Equals("CC_AK_ENV")) {
                        config.AccessKeyId = (string)de.Value;
                    }
                    if (de.Key.Equals("CC_SK_ENV"))
                    {
                        config.AccessKeySecret = (string)de.Value;
                    }
                }
                config.Endpoint = "imagesearch.cn-shanghai.aliyuncs.com";
                config.RegionId = "cn-shanghai";
                config.Type = "access_key";
    
                // 以下為內網(VPC)訪問方式
                // 說明:內網(VPC)訪問:僅限同地區ECS或資源的訪問,例如您購買的Image Search執行個體是華東2(上海),那麼您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與Image Search是否在同一個地區。
                // config.EndpointType = "internal";  // 如果是內網訪問Image Search服務,則endpointType為必填項,值統一為"internal"
                // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內網訪問(VPC)地址,請您更換為您購買執行個體的地區,例如您購買執行個體的地區為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com"
    
                Client client = new Client(config);
                IncreaseInstanceRequest request = new IncreaseInstanceRequest();
                // 必填,Image Search執行個體名稱。注意是執行個體名稱不是執行個體ID。購買後通過上雲層管控台執行個體資訊一欄查看:https://imagesearch.console.aliyun.com/overview
                request.InstanceName = "XXXXXXXXXXX";
                // 必填,oss 中 bucket名稱。
                request.BucketName = "bucketName";
                // 必填,路徑,必須 / 開頭, 非 / 結尾。
                // 此路徑下需要提前準備好 increment.meta 檔案,可參考,使用者指南下的大量操作文檔。
                request.Path = "/public/xx";
                // 選填,請求成功回調地址,http(s)://。
                request.CallbackAddress = "xxx";
                try
                {
                    IncreaseInstanceResponse response = client.IncreaseInstance(request);
                    String result = Newtonsoft.Json.JsonConvert.SerializeObject(response.Body);
                    Console.WriteLine("result:" + result);
                }
                catch (TeaUnretryableException e)
                {
                    Console.WriteLine("InnerException結果:" + e.InnerException.Message);
                    Console.WriteLine("Data結果:" + e.Data);
                    Console.WriteLine("Message結果:" + e.Message);
                    Console.WriteLine("列印String:" + e.ToString());
                }
            }
        }
    }
  • 結果樣本

    {
      RequestId=F9BAD635-3031-1EBB-BE9E-E9FCB318A28C,
      Data={
        IncrementStatus=PROCESSING,
        Id=1470
      },
      Success=true
    }

BatchTaskList介面

  • 程式碼範例

    using AlibabaCloud.OpenApiClient.Models;
    using AlibabaCloud.SDK.ImageSearch20201214.Models;
    using AlibabaCloud.SDK.ImageSearch20201214;
    using AlibabaCloud.TeaUtil.Models;
    using System;
    using System.IO;
    namespace Test
    {
        class BatchTaskList
        {
            static void Main(string[] args)
            {
                Config config = new Config();
                // 建立AK/SK參考:https://www.alibabacloud.com/help/zh/resource-access-management/latest/accesskey-pairs-create-an-accesskey-pair-for-a-ram-user
                //阿里雲帳號AccessKey擁有所有API的存取權限,建議您使用RAM使用者進行API訪問或日常營運。
                //強烈建議不要把AccessKey ID和AccessKey Secret儲存到工程代碼裡,否則可能導致AccessKey泄露,威脅您帳號下所有資源的安全。
                //本樣本以將AccessKey ID和AccessKey Secret儲存在環境變數為例說明。您也可以根據業務需要,儲存到設定檔裡。
                IDictionary environmentVariables = Environment.GetEnvironmentVariables();
                foreach (DictionaryEntry de in environmentVariables)
                {
                    if (de.Key.Equals("CC_AK_ENV")) {
                        config.AccessKeyId = (string)de.Value;
                    }
                    if (de.Key.Equals("CC_SK_ENV"))
                    {
                        config.AccessKeySecret = (string)de.Value;
                    }
                }
                config.Endpoint = "imagesearch.cn-shanghai.aliyuncs.com";
                config.RegionId = "cn-shanghai";
                config.Type = "access_key";
    
                // 以下為內網(VPC)訪問方式
                // 說明:內網(VPC)訪問:僅限同地區ECS或資源的訪問,例如您購買的Image Search執行個體是華東2(上海),那麼您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與Image Search是否在同一個地區。
                // config.EndpointType = "internal";  // 如果是內網訪問Image Search服務,則endpointType為必填項,值統一為"internal"
                // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內網訪問(VPC)地址,請您更換為您購買執行個體的地區,例如您購買執行個體的地區為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com"
    
                Client client = new Client(config);
                IncreaseListRequest request = new IncreaseListRequest();
                // 必填,Image Search執行個體名稱。注意是執行個體名稱不是執行個體ID。購買後通過上雲層管控台執行個體資訊一欄查看:https://imagesearch.console.aliyun.com/overview
                request.InstanceName = "XXXXXXXXXXX";
                // 選填,中繼資料匯出任務id。
                request.Id = 567;
                // 必填,oss 中 bucket名稱。
                request.BucketName = "bucketName";
                // 必填,路徑,必須 / 開頭, 非 / 結尾。
                request.Path = "/public/xx";
                // 選填,返回結果起始位置,預設1。
                request.PageNumber = 1;
                // 選填,返回結果數量,預設20。
                request.PageSize = 1;
                try
                {
                    IncreaseListResponse response = client.IncreaseList(request);
                    String result = Newtonsoft.Json.JsonConvert.SerializeObject(response.Body);
                    Console.WriteLine("result:" + result);
                }
                catch (TeaUnretryableException e)
                {
                    Console.WriteLine("InnerException結果:" + e.InnerException.Message);
                    Console.WriteLine("Data結果:" + e.Data);
                    Console.WriteLine("Message結果:" + e.Message);
                    Console.WriteLine("列印String:" + e.ToString());
                }
            }
        }
    }
  • 結果樣本

    {
      RequestId=56E7E6CC-64AB-17CA-A7CD-1948FB953B8C,
      Data={
        TotalCount=1,
        PageSize=1,
        PageNumber=1,
        Increments={
          Instance=[
            {
              Msg=success,
              Status=NORMAL,
              Path=/xx/xx,
              BucketName=bucketName,
              UtcCreate=1639107872000,
              ErrorUrl=https: //example.com/xxx?Expires=1670661540&xxx=xx,
              UtcModified=1639125540000,
              Id=1464,
              CallbackAddress=null,
              Code=0
            }
          ]
        }
      }
    }