.Net SDK
更新時間:
本文介紹圖像搜索服務(wù).Net SDK的使用方法及示例。
接口列表
接口名稱 | 接口說明 |
Add | 增加圖片。 |
SearchImageByPic | 使用圖片進(jìn)行搜索。 |
SearchImageByName | 指定名稱,使用已入庫的圖片進(jìn)行搜索。 |
Delete | 刪除圖片。 |
UpdateImage | 修改圖片。 |
Detail | 查詢實例信息。 |
DumpMeta | 元信息導(dǎo)出任務(wù)。 |
DumpMetaList | 元信息導(dǎo)出任務(wù)列表。 |
BatchTask | 批量任務(wù)。 |
BatchTaskList | 批量任務(wù)列表。 |
準(zhǔn)備工作
在安裝和使用阿里云SDK前,確保您已經(jīng)注冊阿里云賬號并生成訪問密鑰(AccessKey)。詳情請參見創(chuàng)建AccessKey。
在解決方案資源管理器面板中,右鍵單擊您的項目,選擇NuGet程序包菜單管理。
在打開的NuGet管理面板中單擊瀏覽選項卡,輸入AlibabaCloud.SDK.ImageSearch20201214 。
單擊安裝。
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!"); Config config = new Config(); // 創(chuàng)建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm //阿里云賬號AccessKey擁有所有API的訪問權(quán)限,建議您使用RAM用戶進(jìn)行API訪問或日常運(yùn)維。 //強(qiáng)烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導(dǎo)致AccessKey泄露,威脅您賬號下所有資源的安全。 //本示例以將AccessKey ID和AccessKey Secret保存在環(huán)境變量為例說明。您也可以根據(jù)業(yè)務(wù)需要,保存到配置文件里。 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"; // 以下為內(nèi)網(wǎng)(VPC)訪問方式 // 說明:內(nèi)網(wǎng)(VPC)訪問:僅限同區(qū)域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內(nèi)網(wǎng)VPC地址訪問圖搜服務(wù),否則會調(diào)用不通,如果遇到調(diào)用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區(qū)域。 // config.EndpointType = "internal"; // 如果是內(nèi)網(wǎng)訪問圖像搜索服務(wù),則endpointType為必填項,值統(tǒng)一為"internal" // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內(nèi)網(wǎng)訪問(VPC)地址,請您更換為您購買實例的區(qū)域,例如您購買實例的區(qū)域為杭州,則為"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,以最后一次添加為準(zhǔn),前面添加的圖片將被覆蓋 request.PicName = "xusong.jpg"; // 必填,商品id,最多支持 512個字符。 // 一個商品可有多張圖片。 request.ProductId = "1001"; // 必填,圖像搜索實例名稱。注意是實例名稱不是實例ID。購買后通過上云層管控臺實例信息一欄查看:https://imagesearch.console.aliyun.com/overview request.InstanceName = "XXXXXXXXXXXXXXXXXXXXXXXXX"; // 圖片內(nèi)容,最多支持 4MB大小圖片以及5s的傳輸?shù)却龝r間。當(dāng)前僅支持PNG、JPG、JPEG、BMP、GIF、WEBP、TIFF、PPM格式圖片; // 對于商品、商標(biāo)、通用圖片搜索,圖片長和寬的像素必須都大于等于100且小于等于4096; // 對于布料搜索,圖片長和寬的像素必須都大于等于100且小于等于4096; // 圖像中不能帶有旋轉(zhuǎn)信息 request.PicContentObject = fs; // 選填,整數(shù)類型屬性,可用于查詢時過濾,查詢時會返回該字段。 // 例如不同的站點的圖片/不同用戶的圖片,可以設(shè)置不同的IntAttr,查詢時通過過濾來達(dá)到隔離的目的 request.IntAttr = 99; // 選填,字符串類型屬性,最多支持 128個字符。可用于查詢時過濾,查詢時會返回該字段。 request.StrAttr = "aliyun.com"; // 選填,圖片類目。 // 1. 對于商品搜索:若設(shè)置類目,則以設(shè)置的為準(zhǔn);若不設(shè)置類目,將由系統(tǒng)進(jìn)行類目預(yù)測,預(yù)測的類目結(jié)果可在Response中獲取 。 // 2. 對于布料、商標(biāo)、通用搜索:不論是否設(shè)置類目,系統(tǒng)會將類目設(shè)置為88888888。 request.CategoryId = 5; // 選填,是否需要進(jìn)行主體識別,默認(rèn)為true。 // 1.為true時,由系統(tǒng)進(jìn)行主體識別,以識別的主體進(jìn)行搜索,主體識別結(jié)果可在Response中獲取。 // 2. 為false時,則不進(jìn)行主體識別,以整張圖進(jìn)行搜索。 // 3.對于布料圖片搜索,此參數(shù)會被忽略,系統(tǒng)會以整張圖進(jìn)行搜索。 request.Crop = true; // 選填,圖片的主體區(qū)域,格式為 x1,x2,y1,y2, 其中 x1,y1 是左上角的點,x2,y2是右下角的點。 // 設(shè)置的region 區(qū)域不要超過圖片的邊界 // 若用戶設(shè)置了Region,則不論Crop參數(shù)為何值,都將以用戶輸入Region進(jìn)行搜索。 // 對于布料圖片搜索,此參數(shù)會被忽略,系統(tǒng)會以整張圖進(jìn)行搜索。 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結(jié)果:" + e.InnerException.Message); Console.WriteLine("Data結(jié)果:" + e.Data); Console.WriteLine("Message結(jié)果:" + e.Message); Console.WriteLine("打印String:" + e.ToString()); } } } }
結(jié)果示例
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(); // 創(chuàng)建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm //阿里云賬號AccessKey擁有所有API的訪問權(quán)限,建議您使用RAM用戶進(jìn)行API訪問或日常運(yùn)維。 //強(qiáng)烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導(dǎo)致AccessKey泄露,威脅您賬號下所有資源的安全。 //本示例以將AccessKey ID和AccessKey Secret保存在環(huán)境變量為例說明。您也可以根據(jù)業(yè)務(wù)需要,保存到配置文件里。 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"; // 以下為內(nèi)網(wǎng)(VPC)訪問方式 // 說明:內(nèi)網(wǎng)(VPC)訪問:僅限同區(qū)域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內(nèi)網(wǎng)VPC地址訪問圖搜服務(wù),否則會調(diào)用不通,如果遇到調(diào)用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區(qū)域。 // config.EndpointType = "internal"; // 如果是內(nèi)網(wǎng)訪問圖像搜索服務(wù),則endpointType為必填項,值統(tǒng)一為"internal" // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內(nèi)網(wǎng)訪問(VPC)地址,請您更換為您購買實例的區(qū)域,例如您購買實例的區(qū)域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" Client client = new Client(config); FileStream fs = File.OpenRead("D:/123.jpg"); SearchImageByPicAdvanceRequest request = new SearchImageByPicAdvanceRequest(); // 選填,商品類目。 // 1. 對于商品搜索:若設(shè)置類目,則以設(shè)置的為準(zhǔn);若不設(shè)置類目,將由系統(tǒng)進(jìn)行類目預(yù)測,預(yù)測的類目結(jié)果可在Response中獲取 。 // 2. 對于布料、商標(biāo)、通用搜索:不論是否設(shè)置類目,系統(tǒng)會將類目設(shè)置為88888888。 request.CategoryId = 5; // 圖片內(nèi)容,最多支持 4MB大小圖片以及5s的傳輸?shù)却龝r間。當(dāng)前僅支持PNG、JPG、JPEG、BMP、GIF、WEBP、TIFF、PPM格式圖片; // 對于商品、商標(biāo)、通用圖片搜索,圖片長和寬的像素必須都大于等于100且小于等于4096; // 對于布料搜索,圖片長和寬的像素必須都大于等于448且小于等于4096; // 圖像中不能帶有旋轉(zhuǎn)信息 request.PicContentObject = fs; // 選填,是否需要進(jìn)行主體識別,默認(rèn)為true。 // 1.為true時,由系統(tǒng)進(jìn)行主體識別,以識別的主體進(jìn)行搜索,主體識別結(jié)果可在Response中獲取。 // 2. 為false時,則不進(jìn)行主體識別,以整張圖進(jìn)行搜索。 // 3.對于布料圖片搜索,此參數(shù)會被忽略,系統(tǒng)會以整張圖進(jìn)行搜索。 request.Crop = true; // 選填,過濾條件 // int_attr支持的操作符有>、>=、<、<=、=,str_attr支持的操作符有=和!=,多個條件之支持AND和OR進(jìn)行連接。 // 示例: //1. 根據(jù)IntAttr過濾結(jié)果,int_attr>=100 //2. 根據(jù)StrAttr過濾結(jié)果,str_attr!="value1" //3. 根據(jù)IntAttr和StrAttr聯(lián)合過濾結(jié)果,int_attr=1000 AND str_attr="value1" request.Filter = "int_attr=99"; // 選填,圖片的主體區(qū)域,格式為 x1,x2,y1,y2, 其中 x1,y1 是左上角的點,x2,y2是右下角的點。 // 設(shè)置的region 區(qū)域不要超過圖片的邊界。 // 若用戶設(shè)置了Region,則不論Crop參數(shù)為何值,都將以用戶輸入Region進(jìn)行搜索。 // 3.對于布料圖片搜索,此參數(shù)會被忽略,系統(tǒng)會以整張圖進(jìn)行搜索。 request.Region = "66,333,98,356"; // 必填,圖像搜索實例名稱。注意是實例名稱不是實例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結(jié)果:" + e.InnerException.Message); Console.WriteLine("Data結(jié)果:" + e.Data); Console.WriteLine("Message結(jié)果:" + e.Message); Console.WriteLine("打印String:" + e.ToString()); } } } }
結(jié)果示例
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(); // 創(chuàng)建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm //阿里云賬號AccessKey擁有所有API的訪問權(quán)限,建議您使用RAM用戶進(jìn)行API訪問或日常運(yùn)維。 //強(qiáng)烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導(dǎo)致AccessKey泄露,威脅您賬號下所有資源的安全。 //本示例以將AccessKey ID和AccessKey Secret保存在環(huán)境變量為例說明。您也可以根據(jù)業(yè)務(wù)需要,保存到配置文件里。 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"; // 以下為內(nèi)網(wǎng)(VPC)訪問方式 // 說明:內(nèi)網(wǎng)(VPC)訪問:僅限同區(qū)域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內(nèi)網(wǎng)VPC地址訪問圖搜服務(wù),否則會調(diào)用不通,如果遇到調(diào)用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區(qū)域。 // config.EndpointType = "internal"; // 如果是內(nèi)網(wǎng)訪問圖像搜索服務(wù),則endpointType為必填項,值統(tǒng)一為"internal" // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內(nèi)網(wǎng)訪問(VPC)地址,請您更換為您購買實例的區(qū)域,例如您購買實例的區(qū)域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" Client client = new Client(config); SearchImageByNameRequest request = new SearchImageByNameRequest(); // 選填,商品類目。 // 1. 對于商品搜索:若設(shè)置類目,則以設(shè)置的為準(zhǔn);若不設(shè)置類目,將由系統(tǒng)進(jìn)行類目預(yù)測,預(yù)測的類目結(jié)果可在Response中獲取 。 // 2. 對于布料、商標(biāo)、通用搜索:不論是否設(shè)置類目,系統(tǒng)會將類目設(shè)置為88888888。 request.CategoryId = 5; // 必填,圖像搜索實例名稱。注意是實例名稱不是實例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結(jié)果:" + e.InnerException.Message); Console.WriteLine("Data結(jié)果:" + e.Data); Console.WriteLine("Message結(jié)果:" + e.Message); Console.WriteLine("打印String:" + e.ToString()); } } } }
結(jié)果示例
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(); // 創(chuàng)建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm //阿里云賬號AccessKey擁有所有API的訪問權(quán)限,建議您使用RAM用戶進(jìn)行API訪問或日常運(yùn)維。 //強(qiáng)烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導(dǎo)致AccessKey泄露,威脅您賬號下所有資源的安全。 //本示例以將AccessKey ID和AccessKey Secret保存在環(huán)境變量為例說明。您也可以根據(jù)業(yè)務(wù)需要,保存到配置文件里。 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"; // 以下為內(nèi)網(wǎng)(VPC)訪問方式 // 說明:內(nèi)網(wǎng)(VPC)訪問:僅限同區(qū)域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內(nèi)網(wǎng)VPC地址訪問圖搜服務(wù),否則會調(diào)用不通,如果遇到調(diào)用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區(qū)域。 // config.EndpointType = "internal"; // 如果是內(nèi)網(wǎng)訪問圖像搜索服務(wù),則endpointType為必填項,值統(tǒng)一為"internal" // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內(nèi)網(wǎng)訪問(VPC)地址,請您更換為您購買實例的區(qū)域,例如您購買實例的區(qū)域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" Client client = new Client(config); DeleteImageRequest request = new DeleteImageRequest(); // 必填,圖像搜索實例名稱。注意是實例名稱不是實例ID。購買后通過上云層管控臺實例信息一欄查看:https://imagesearch.console.aliyun.com/overview request.InstanceName = "XXXXXXXXXXX"; // 必填,圖片名稱,最多支持 512個字符。 // 1. ProductId + PicName唯一確定一張圖片。 request.PicName = "xusong.jpg"; // 選填,圖片名稱。若不指定本參數(shù),則刪除ProductId下所有圖片;若指定本參數(shù),則刪除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結(jié)果:" + e.InnerException.Message); Console.WriteLine("Data結(jié)果:" + e.Data); Console.WriteLine("Message結(jié)果:" + e.Message); Console.WriteLine("打印String:" + e.ToString()); } } } }
結(jié)果示例
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(); // 創(chuàng)建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm //阿里云賬號AccessKey擁有所有API的訪問權(quán)限,建議您使用RAM用戶進(jìn)行API訪問或日常運(yùn)維。 //強(qiáng)烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導(dǎo)致AccessKey泄露,威脅您賬號下所有資源的安全。 //本示例以將AccessKey ID和AccessKey Secret保存在環(huán)境變量為例說明。您也可以根據(jù)業(yè)務(wù)需要,保存到配置文件里。 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"; // 以下為內(nèi)網(wǎng)(VPC)訪問方式 // 說明:內(nèi)網(wǎng)(VPC)訪問:僅限同區(qū)域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內(nèi)網(wǎng)VPC地址訪問圖搜服務(wù),否則會調(diào)用不通,如果遇到調(diào)用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區(qū)域。 // config.EndpointType = "internal"; // 如果是內(nèi)網(wǎng)訪問圖像搜索服務(wù),則endpointType為必填項,值統(tǒng)一為"internal" // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內(nèi)網(wǎng)訪問(VPC)地址,請您更換為您購買實例的區(qū)域,例如您購買實例的區(qū)域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" Client client = new Client(config); UpdateImageRequest request = new UpdateImageRequest(); // 必填,圖像搜索實例名稱。注意是實例名稱不是實例ID。購買后通過上云層管控臺實例信息一欄查看:https://imagesearch.console.aliyun.com/overview request.InstanceName = "XXXXXXXXXXX"; // 必填,商品ID 不可修改。 request.ProductId = "1"; // 必填,圖片名稱,不可修改。 request.PicName = "1"; // 選填,整數(shù)類型屬性,可用于查詢時過濾,查詢時會返回該字段。 request.IntAttr = 1; // 選填,字符串類型屬性,最多支持 128個字符。可用于查詢時過濾,查詢時會返回該字段。 request.StrAttr = "test"; // 選填,用戶自定義的內(nèi)容,最多支持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結(jié)果:" + e.InnerException.Message); Console.WriteLine("Data結(jié)果:" + e.Data); Console.WriteLine("Message結(jié)果:" + e.Message); Console.WriteLine("打印String:" + e.ToString()); } } } }
結(jié)果示例
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(); // 創(chuàng)建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm //阿里云賬號AccessKey擁有所有API的訪問權(quán)限,建議您使用RAM用戶進(jìn)行API訪問或日常運(yùn)維。 //強(qiáng)烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導(dǎo)致AccessKey泄露,威脅您賬號下所有資源的安全。 //本示例以將AccessKey ID和AccessKey Secret保存在環(huán)境變量為例說明。您也可以根據(jù)業(yè)務(wù)需要,保存到配置文件里。 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"; // 以下為內(nèi)網(wǎng)(VPC)訪問方式 // 說明:內(nèi)網(wǎng)(VPC)訪問:僅限同區(qū)域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內(nèi)網(wǎng)VPC地址訪問圖搜服務(wù),否則會調(diào)用不通,如果遇到調(diào)用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區(qū)域。 // config.EndpointType = "internal"; // 如果是內(nèi)網(wǎng)訪問圖像搜索服務(wù),則endpointType為必填項,值統(tǒng)一為"internal" // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內(nèi)網(wǎng)訪問(VPC)地址,請您更換為您購買實例的區(qū)域,例如您購買實例的區(qū)域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" Client client = new Client(config); DetailRequest request = new DetailRequest(); // 必填,圖像搜索實例名稱。注意是實例名稱不是實例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結(jié)果:" + e.InnerException.Message); Console.WriteLine("Data結(jié)果:" + e.Data); Console.WriteLine("Message結(jié)果:" + e.Message); Console.WriteLine("打印String:" + e.ToString()); } } } }
結(jié)果示例
{ 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(); // 創(chuàng)建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm //阿里云賬號AccessKey擁有所有API的訪問權(quán)限,建議您使用RAM用戶進(jìn)行API訪問或日常運(yùn)維。 //強(qiáng)烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導(dǎo)致AccessKey泄露,威脅您賬號下所有資源的安全。 //本示例以將AccessKey ID和AccessKey Secret保存在環(huán)境變量為例說明。您也可以根據(jù)業(yè)務(wù)需要,保存到配置文件里。 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"; // 以下為內(nèi)網(wǎng)(VPC)訪問方式 // 說明:內(nèi)網(wǎng)(VPC)訪問:僅限同區(qū)域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內(nèi)網(wǎng)VPC地址訪問圖搜服務(wù),否則會調(diào)用不通,如果遇到調(diào)用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區(qū)域。 // config.EndpointType = "internal"; // 如果是內(nèi)網(wǎng)訪問圖像搜索服務(wù),則endpointType為必填項,值統(tǒng)一為"internal" // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內(nèi)網(wǎng)訪問(VPC)地址,請您更換為您購買實例的區(qū)域,例如您購買實例的區(qū)域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" Client client = new Client(config); DumpMetaRequest request = new DumpMetaRequest(); // 必填,圖像搜索實例名稱。注意是實例名稱不是實例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結(jié)果:" + e.InnerException.Message); Console.WriteLine("Data結(jié)果:" + e.Data); Console.WriteLine("Message結(jié)果:" + e.Message); Console.WriteLine("打印String:" + e.ToString()); } } } }
結(jié)果示例
{ 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(); // 創(chuàng)建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm //阿里云賬號AccessKey擁有所有API的訪問權(quán)限,建議您使用RAM用戶進(jìn)行API訪問或日常運(yùn)維。 //強(qiáng)烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導(dǎo)致AccessKey泄露,威脅您賬號下所有資源的安全。 //本示例以將AccessKey ID和AccessKey Secret保存在環(huán)境變量為例說明。您也可以根據(jù)業(yè)務(wù)需要,保存到配置文件里。 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"; // 以下為內(nèi)網(wǎng)(VPC)訪問方式 // 說明:內(nèi)網(wǎng)(VPC)訪問:僅限同區(qū)域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內(nèi)網(wǎng)VPC地址訪問圖搜服務(wù),否則會調(diào)用不通,如果遇到調(diào)用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區(qū)域。 // config.EndpointType = "internal"; // 如果是內(nèi)網(wǎng)訪問圖像搜索服務(wù),則endpointType為必填項,值統(tǒng)一為"internal" // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內(nèi)網(wǎng)訪問(VPC)地址,請您更換為您購買實例的區(qū)域,例如您購買實例的區(qū)域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" Client client = new Client(config); DumpMetaListRequest request = new DumpMetaListRequest(); // 必填,圖像搜索實例名稱。注意是實例名稱不是實例ID。購買后通過上云層管控臺實例信息一欄查看:https://imagesearch.console.aliyun.com/overview request.InstanceName = "XXXXXXXXXXX"; // 選填,元數(shù)據(jù)導(dǎo)出任務(wù)id。 request.Id = 567; // 選填,返回結(jié)果起始位置,默認(rèn)1。 request.PageNumber = 1; // 選填,返回結(jié)果數(shù)量,默認(rèn)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結(jié)果:" + e.InnerException.Message); Console.WriteLine("Data結(jié)果:" + e.Data); Console.WriteLine("Message結(jié)果:" + e.Message); Console.WriteLine("打印String:" + e.ToString()); } } } }
結(jié)果示例
{ 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接口
代碼示例
// 創(chuàng)建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm //阿里云賬號AccessKey擁有所有API的訪問權(quán)限,建議您使用RAM用戶進(jìn)行API訪問或日常運(yùn)維。 //強(qiáng)烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導(dǎo)致AccessKey泄露,威脅您賬號下所有資源的安全。 //本示例以將AccessKey ID和AccessKey Secret保存在環(huán)境變量為例說明。您也可以根據(jù)業(yè)務(wù)需要,保存到配置文件里。 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"; // 以下為內(nèi)網(wǎng)(VPC)訪問方式 // 說明:內(nèi)網(wǎng)(VPC)訪問:僅限同區(qū)域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內(nèi)網(wǎng)VPC地址訪問圖搜服務(wù),否則會調(diào)用不通,如果遇到調(diào)用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區(qū)域。 // config.EndpointType = "internal"; // 如果是內(nèi)網(wǎng)訪問圖像搜索服務(wù),則endpointType為必填項,值統(tǒng)一為"internal" // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內(nèi)網(wǎng)訪問(VPC)地址,請您更換為您購買實例的區(qū)域,例如您購買實例的區(qū)域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" Client client = new Client(config); IncreaseInstanceRequest request = new IncreaseInstanceRequest(); // 必填,圖像搜索實例名稱。注意是實例名稱不是實例ID。購買后通過上云層管控臺實例信息一欄查看:https://imagesearch.console.aliyun.com/overview request.InstanceName = "XXXXXXXXXXX"; // 必填,oss 中 bucket名稱。 request.BucketName = "bucketName"; // 必填,路徑,必須 / 開頭, 非 / 結(jié)尾。 // 此路徑下需要提前準(zhǔn)備好 increment.meta 文件,可參考,用戶指南下的批量操作文檔。 request.Path = "/public/xx"; // 選填,請求成功回調(diào)地址,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結(jié)果:" + e.InnerException.Message); Console.WriteLine("Data結(jié)果:" + e.Data); Console.WriteLine("Message結(jié)果:" + e.Message); Console.WriteLine("打印String:" + e.ToString()); } } } }
結(jié)果示例
{ 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(); // 創(chuàng)建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm //阿里云賬號AccessKey擁有所有API的訪問權(quán)限,建議您使用RAM用戶進(jìn)行API訪問或日常運(yùn)維。 //強(qiáng)烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導(dǎo)致AccessKey泄露,威脅您賬號下所有資源的安全。 //本示例以將AccessKey ID和AccessKey Secret保存在環(huán)境變量為例說明。您也可以根據(jù)業(yè)務(wù)需要,保存到配置文件里。 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"; // 以下為內(nèi)網(wǎng)(VPC)訪問方式 // 說明:內(nèi)網(wǎng)(VPC)訪問:僅限同區(qū)域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內(nèi)網(wǎng)VPC地址訪問圖搜服務(wù),否則會調(diào)用不通,如果遇到調(diào)用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區(qū)域。 // config.EndpointType = "internal"; // 如果是內(nèi)網(wǎng)訪問圖像搜索服務(wù),則endpointType為必填項,值統(tǒng)一為"internal" // config.Endpoint = "imagesearch-vpc.cn-shanghai.aliyuncs.com"; // 為內(nèi)網(wǎng)訪問(VPC)地址,請您更換為您購買實例的區(qū)域,例如您購買實例的區(qū)域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" Client client = new Client(config); IncreaseListRequest request = new IncreaseListRequest(); // 必填,圖像搜索實例名稱。注意是實例名稱不是實例ID。購買后通過上云層管控臺實例信息一欄查看:https://imagesearch.console.aliyun.com/overview request.InstanceName = "XXXXXXXXXXX"; // 選填,元數(shù)據(jù)導(dǎo)出任務(wù)id。 request.Id = 567; // 必填,oss 中 bucket名稱。 request.BucketName = "bucketName"; // 必填,路徑,必須 / 開頭, 非 / 結(jié)尾。 request.Path = "/public/xx"; // 選填,返回結(jié)果起始位置,默認(rèn)1。 request.PageNumber = 1; // 選填,返回結(jié)果數(shù)量,默認(rèn)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結(jié)果:" + e.InnerException.Message); Console.WriteLine("Data結(jié)果:" + e.Data); Console.WriteLine("Message結(jié)果:" + e.Message); Console.WriteLine("打印String:" + e.ToString()); } } } }
結(jié)果示例
{ 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 } ] } } }
文檔內(nèi)容是否對您有幫助?