本文介紹圖像搜索服務Go SDK的使用方法及示例。
說明
如需了解更多產品詳情和獲取技術支持,請單擊在線咨詢或通過釘釘群(35035130)聯系我們。
接口列表
接口名稱 | 接口說明 |
Add | 增加圖片。 |
SearchImageByPic | 使用圖片進行搜索 |
SearchImageByName | 指定名稱,使用已入庫的圖片進行搜索。 |
Delete | 刪除圖片。 |
UpdateImage | 修改圖片。 |
Detail | 查詢實例信息。 |
DumpMeta | 元信息導出任務。 |
DumpMetaList | 元信息導出任務列表。 |
BatchTask | 批量任務。 |
BatchTaskList | 批量任務列表。 |
準備工作
在安裝和使用阿里云SDK前,確保您已經注冊阿里云賬號并生成訪問密鑰(AccessKey)。詳情請參見創建AccessKey。
使用go工具執行以下命令,安裝阿里云Go SDK:
go get github.com/alibabacloud-go/imagesearch-20201214/v4
Add接口
代碼示例
package main import ( "fmt" "os" rpc "github.com/alibabacloud-go/darabonba-openapi/v2/client" imagesearch "github.com/alibabacloud-go/imagesearch-20201214/v4/client" util "github.com/alibabacloud-go/tea-utils/v2/service" ) func main() { // 初始化 config // 創建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm // 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。 // 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。 // 本示例以將AccessKey ID和AccessKey Secret保存在環境變量為例說明。您也可以根據業務需要,保存到配置文件里。 var config = new(rpc.Config).SetAccessKeyId(os.Getenv("CC_AK_ENV")). SetAccessKeySecret(os.Getenv("CC_SK_ENV")). SetType("access_key"). // 請更換成您購買實例的區域,例如購買的是杭州區域,則為"imagesearch.cn-hangzhou.aliyuncs.com" SetEndpoint("imagesearch.cn-shanghai.aliyuncs.com"). // 以下為內網(VPC)訪問方式 // 說明:內網(VPC)訪問:僅限同區域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區域。 // SetEndpointType("internal"). // 如果是內網訪問圖像搜索服務,則endpointType為必填項,值統一為"internal" // SetEndpoint("imagesearch-vpc.cn-shanghai.aliyuncs.com"). // 為內網訪問(VPC)地址,請您更換為您購買實例的區域,例如您購買實例的區域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" // 請您更換成您購買實例的區域,例如您購買的實例區域為杭州,則更換為"cn-hangzhou" SetRegionId("cn-shanghai") // 創建客戶端 client, err := imagesearch.NewClient(config) if err != nil { panic(err) } // 初始化 runtimeObject var runtimeObject = new(util.RuntimeOptions) b, err := os.Open("D:/123.jpg") if err != nil { panic(err) } request := new(imagesearch.AddImageAdvanceRequest). // 必填,圖像搜索實例名稱。注意是實例名稱不是實例ID。購買后通過上云層管控臺實例信息一欄查看:https://imagesearch.console.aliyun.com/overview SetInstanceName("XXXXXXXX"). // 必填,圖片名稱,最多支持 512個字符。 // 1. ProductId + PicName唯一確定一張圖片。 // 2. 如果多次添加圖片具有相同的ProductId + PicName,以最后一次添加為準,前面添加的圖片將被覆蓋。 SetPicName("test"). // 必填,商品id,最多支持 512個字符。 // 一個商品可有多張圖片。 SetProductId("test"). // 圖片內容,最多支持 4MB大小圖片以及5s的傳輸等待時間。當前僅支持PNG、JPG、JPEG、BMP、GIF、WEBP、TIFF、PPM格式圖片; // 對于商品、商標、通用圖片搜索,圖片長和寬的像素必須都大于等于100且小于等于4096; // 對于布料搜索,圖片長和寬的像素必須都大于等于448且小于等于4096; // 圖像中不能帶有旋轉信息圖片內容,最多支持 2MB大小圖片以及5s的傳輸等待時間。當前僅支持jpg和png格式圖片; SetPicContentObject(b). // 選填,圖片類目。 // 1. 對于商品搜索:若設置類目,則以設置的為準;若不設置類目,將由系統進行類目預測,預測的類目結果可在Response中獲取 。 // 2. 對于布料、商標、通用搜索:不論是否設置類目,系統會將類目設置為88888888。 SetCategoryId(2). // 選填,是否需要進行主體識別,默認為true。 // 1.為true時,由系統進行主體識別,以識別的主體進行搜索,主體識別結果可在Response中獲取。 // 2. 為false時,則不進行主體識別,以整張圖進行搜索。 // 3.對于布料圖片搜索,此參數會被忽略,系統會以整張圖進行搜索。 SetCrop(true). // 選填,圖片的主體區域,格式為 x1,x2,y1,y2, 其中 x1,y1 是左上角的點,x2,y2是右下角的點。 // 設置的region 區域不要超過圖片的邊界。 // 若用戶設置了Region,則不論Crop參數為何值,都將以用戶輸入Region進行搜索。 // 對于布料圖片搜索,此參數會被忽略,系統會以整張圖進行搜索。 SetRegion("167,477,220,407"). // 選填,用戶自定義的內容,最多支持 4096個字符。 // 查詢時會返回該字段。例如可添加圖片的描述等文本。 SetCustomContent("this is a simple test!"). // 選填,整數類型屬性,可用于查詢時過濾,查詢時會返回該字段。 // 例如不同的站點的圖片/不同用戶的圖片,可以設置不同的IntAttr,查詢時通過過濾來達到隔離的目的 SetIntAttr(100). // 選填,字符串類型屬性,最多支持 128個字符。可用于查詢時過濾,查詢時會返回該字段。 SetStrAttr("1") // 調用 api resp, err := client.AddImageAdvance(request, runtimeObject) if err != nil { fmt.Println(err.Error()) } fmt.Println(resp) }
結果示例
{ "RequestId": "B48CC953-F495-496C-BC96-B96826A860F1", "Success": true, "Message": "success", "Code": 0, "PicInfo": { "CategoryId": 2, "Region": "167,477,220,407" } }
SearchImageByPic接口
代碼示例
package main import ( "fmt" "os" rpc "github.com/alibabacloud-go/darabonba-openapi/v2/client" imagesearch "github.com/alibabacloud-go/imagesearch-20201214/v4/client" util "github.com/alibabacloud-go/tea-utils/v2/service" ) func main() { // 初始化 config // 創建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm // 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。 // 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。 // 本示例以將AccessKey ID和AccessKey Secret保存在環境變量為例說明。您也可以根據業務需要,保存到配置文件里。 var config = new(rpc.Config).SetAccessKeyId(os.Getenv("CC_AK_ENV")). SetAccessKeySecret(os.Getenv("CC_SK_ENV")). SetType("access_key"). // 請更換成您購買實例的區域,例如購買的是杭州區域,則為"imagesearch.cn-hangzhou.aliyuncs.com" SetEndpoint("imagesearch.cn-shanghai.aliyuncs.com"). // 以下為內網(VPC)訪問方式 // 說明:內網(VPC)訪問:僅限同區域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區域。 // SetEndpointType("internal"). // 如果是內網訪問圖像搜索服務,則endpointType為必填項,值統一為"internal" // SetEndpoint("imagesearch-vpc.cn-shanghai.aliyuncs.com"). // 為內網訪問(VPC)地址,請您更換為您購買實例的區域,例如您購買實例的區域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" // 請您更換成您購買實例的區域,例如您購買的實例區域為杭州,則更換為"cn-hangzhou" SetRegionId("cn-shanghai") // 創建客戶端 client, err := imagesearch.NewClient(config) if err != nil { panic(err) } // 初始化 runtimeObject var runtimeObject = new(util.RuntimeOptions) b, err := os.Open("D:/123.jpg") if err != nil { panic(err) } request := new(imagesearch.SearchImageByPicAdvanceRequest). // 必填,圖像搜索實例名稱。注意是實例名稱不是實例ID。購買后通過上云層管控臺實例信息一欄查看:https://imagesearch.console.aliyun.com/overview SetInstanceName("xxxxxxxxxx"). // 圖片內容,最多支持 4MB大小圖片以及5s的傳輸等待時間。當前僅支持PNG、JPG、JPEG、BMP、GIF、WEBP、TIFF、PPM格式圖片; // 對于商品、商標、通用圖片搜索,圖片長和寬的像素必須都大于等于100且小于等于4096; // 對于布料搜索,圖片長和寬的像素必須都大于等于448且小于等于4096; // 圖像中不能帶有旋轉信息 SetPicContentObject(b). // 選填,商品類目。 // 1. 對于商品搜索:若設置類目,則以設置的為準;若不設置類目,將由系統進行類目預測,預測的類目結果可在Response中獲取 。 // 2. 對于布料、商標、通用搜索:不論是否設置類目,系統會將類目設置為88888888。 SetCategoryId(2). // 選填,返回結果的數目。取值范圍:1-100。默認值:10。 SetNum(10). // 選填,返回結果的起始位置。取值范圍:0-499。默認值:0 SetStart(0). // 選填,過濾條件 // 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" SetFilter("int_attr=101 OR str_attr=\"2\""). // 選填,是否需要進行主體識別,默認為true。 // 1.為true時,由系統進行主體識別,以識別的主體進行搜索,主體識別結果可在Response中獲取。 // 2. 為false時,則不進行主體識別,以整張圖進行搜索。 // 3.對于布料圖片搜索,此參數會被忽略,系統會以整張圖進行搜索。 SetCrop(true). // 選填,圖片的主體區域,格式為 x1,x2,y1,y2, 其中 x1,y1 是左上角的點,x2,y2是右下角的點。 // 設置的region 區域不要超過圖片的邊界。 // 若用戶設置了Region,則不論Crop參數為何值,都將以用戶輸入Region進行搜索。 // 3.對于布料圖片搜索,此參數會被忽略,系統會以整張圖進行搜索。 SetRegion("167,476,220,407") // 調用 api resp, err := client.SearchImageByPicAdvance(request, runtimeObject) if err != nil { fmt.Println(err.Error()) } fmt.Println(resp) }
結果示例
{ "RequestId": "F468F52E-963A-452B-88E7-1C43F92C9D81", "Success": true, "Code": 0, "Msg": "success", "Auctions": [ { "CategoryId": 2, "ProductId": "php", "PicName": "test", "CustomContent": "this is a simple test!", "SortExprValues": "292.509948730469;16", "IntAttr": 100, "StrAttr": "1", "Score": 1 } ], "Head": { "DocsReturn": 1, "DocsFound": 1, "SearchTime": 121 }, "PicInfo": { "CategoryId": 2, "Region": "167,476,220,407", "AllCategories": [ { "Id": 0, "Name": "Tops" }, ....... { "Id": 88888888, "Name": "Other" } ], "MultiRegion": [ { "Region": "112,440,76,387" } ], } }
SearchImageByName接口
package main import ( "fmt" "os" rpc "github.com/alibabacloud-go/darabonba-openapi/v2/client" imagesearch "github.com/alibabacloud-go/imagesearch-20201214/v4/client" util "github.com/alibabacloud-go/tea-utils/v2/service" ) func main() { // 初始化 config // 創建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm // 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。 // 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。 // 本示例以將AccessKey ID和AccessKey Secret保存在環境變量為例說明。您也可以根據業務需要,保存到配置文件里。 var config = new(rpc.Config).SetAccessKeyId(os.Getenv("CC_AK_ENV")). SetAccessKeySecret(os.Getenv("CC_SK_ENV")). SetType("access_key"). // 請更換成您購買實例的區域,例如購買的是杭州區域,則為"imagesearch.cn-hangzhou.aliyuncs.com" SetEndpoint("imagesearch.cn-shanghai.aliyuncs.com"). // 以下為內網(VPC)訪問方式 // 說明:內網(VPC)訪問:僅限同區域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區域。 // SetEndpointType("internal"). // 如果是內網訪問圖像搜索服務,則endpointType為必填項,值統一為"internal" // SetEndpoint("imagesearch-vpc.cn-shanghai.aliyuncs.com"). // 為內網訪問(VPC)地址,請您更換為您購買實例的區域,例如您購買實例的區域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" // 請您更換成您購買實例的區域,例如您購買的實例區域為杭州,則更換為"cn-hangzhou" SetRegionId("cn-shanghai") // 創建客戶端 client, err := imagesearch.NewClient(config) if err != nil { panic(err) } request := new(imagesearch.SearchImageByNameRequest). // 必填,圖像搜索實例名稱。注意是實例名稱不是實例ID。購買后通過上云層管控臺實例信息一欄查看:https://imagesearch.console.aliyun.com/overview SetInstanceName("XXXXXXXXXXX"). // 必填,圖片名稱,最多支持 512個字符。 // 1. ProductId + PicName唯一確定一張圖片。 SetPicName("test"). // 必填,商品id,最多支持 512個字符。 // 一個商品可有多張圖片。 SetProductId("php"). // 選填,商品類目。 // 1. 對于商品搜索:若設置類目,則以設置的為準;若不設置類目,將由系統進行類目預測,預測的類目結果可在Response中獲取 。 // 2. 對于布料、商標、通用搜索:不論是否設置類目,系統會將類目設置為88888888。 SetCategoryId(2). // 選填,返回結果的數目。取值范圍:1-100。默認值:10。 SetNum(10). // 選填,返回結果的起始位置。取值范圍:0-499。默認值:0。 SetStart(0). // 選填,過濾條件 // 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" SetFilter("str_attr=\"1\"") //設置字符串過濾條件 // 調用 api resp, err := client.SearchImageByName(request) if err != nil { fmt.Println(err.Error()) } fmt.Println(resp) }
結果示例
{ "RequestId": "9011A4A3-7642-44C5-AA33-6E38BA2EA3F1", "Success": true, "Code": 0, "Msg": "success", "Auctions": [ { "CategoryId": 2, "ProductId": "php", "PicName": "test", "CustomContent": "this is a simple test!", "SortExprValues": "7.33136443711219e+24;0", "IntAttr": 100, "StrAttr": "1", "Score": 1 } ], "Head": { "DocsReturn": 1, "DocsFound": 1, "SearchTime": 12 }, "PicInfo": { "CategoryId": 2, "Region": null, "AllCategories": [ { "Id": 0, "Name": "Tops" }, ....... { "Id": 88888888, "Name": "Other" } ], "MultiRegion": [ { "Region": "112,440,76,387" } ], "Region": "383,681,291,549" } }
Delete接口
代碼示例
package main import ( "fmt" "os" rpc "github.com/alibabacloud-go/darabonba-openapi/v2/client" imagesearch "github.com/alibabacloud-go/imagesearch-20201214/v4/client" util "github.com/alibabacloud-go/tea-utils/v2/service" ) func main() { // 初始化 config // 創建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm // 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。 // 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。 // 本示例以將AccessKey ID和AccessKey Secret保存在環境變量為例說明。您也可以根據業務需要,保存到配置文件里。 var config = new(rpc.Config).SetAccessKeyId(os.Getenv("CC_AK_ENV")). SetAccessKeySecret(os.Getenv("CC_SK_ENV")). SetType("access_key"). // 請更換成您購買實例的區域,例如購買的是杭州區域,則為"imagesearch.cn-hangzhou.aliyuncs.com" SetEndpoint("imagesearch.cn-shanghai.aliyuncs.com"). // 以下為內網(VPC)訪問方式 // 說明:內網(VPC)訪問:僅限同區域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區域。 // SetEndpointType("internal"). // 如果是內網訪問圖像搜索服務,則endpointType為必填項,值統一為"internal" // SetEndpoint("imagesearch-vpc.cn-shanghai.aliyuncs.com"). // 為內網訪問(VPC)地址,請您更換為您購買實例的區域,例如您購買實例的區域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" // 請您更換成您購買實例的區域,例如您購買的實例區域為杭州,則更換為"cn-hangzhou" SetRegionId("cn-shanghai") // 創建客戶端 client, err := imagesearch.NewClient(config) if err != nil { panic(err) } request := new(imagesearch.DeleteImageRequest). // 必填,圖像搜索實例名稱。注意是實例名稱不是實例ID。購買后通過上云層管控臺實例信息一欄查看:https://imagesearch.console.aliyun.com/overview SetInstanceName("XXXXXXXX"). // 必填,圖片名稱,最多支持 512個字符。 // 1. ProductId + PicName唯一確定一張圖片。 SetPicName("test"). // 選填,圖片名稱。若不指定本參數,則刪除ProductId下所有圖片;若指定本參數,則刪除ProductId+PicName指定的圖片。 SetProductId("php") // 調用 api resp, err := client.DeleteImage(request) if err != nil { fmt.Println(err.Error()) } fmt.Println(resp) }
結果示例
{ "RequestId": "C9432066-8918-447F-858B-B4B11E2A6941", "Success": true, "Message": "success", "Code": 0 }
UpdateImage接口
代碼示例
package main import ( "fmt" "os" rpc "github.com/alibabacloud-go/darabonba-openapi/v2/client" imagesearch "github.com/alibabacloud-go/imagesearch-20201214/v4/client" util "github.com/alibabacloud-go/tea-utils/v2/service" ) func main() { // 初始化 config // 創建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm // 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。 // 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。 // 本示例以將AccessKey ID和AccessKey Secret保存在環境變量為例說明。您也可以根據業務需要,保存到配置文件里。 var config = new(rpc.Config).SetAccessKeyId(os.Getenv("CC_AK_ENV")). SetAccessKeySecret(os.Getenv("CC_SK_ENV")). SetType("access_key"). // 請更換成您購買實例的區域,例如購買的是杭州區域,則為"imagesearch.cn-hangzhou.aliyuncs.com" SetEndpoint("imagesearch.cn-shanghai.aliyuncs.com"). // 以下為內網(VPC)訪問方式 // 說明:內網(VPC)訪問:僅限同區域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區域。 // SetEndpointType("internal"). // 如果是內網訪問圖像搜索服務,則endpointType為必填項,值統一為"internal" // SetEndpoint("imagesearch-vpc.cn-shanghai.aliyuncs.com"). // 為內網訪問(VPC)地址,請您更換為您購買實例的區域,例如您購買實例的區域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" // 請您更換成您購買實例的區域,例如您購買的實例區域為杭州,則更換為"cn-hangzhou" SetRegionId("cn-shanghai") // 創建客戶端 client, err := imagesearch.NewClient(config) if err != nil { panic(err) } request := new(imagesearch.UpdateImageRequest). // 必填,圖像搜索實例名稱。注意是實例名稱不是實例ID。購買后通過上云層管控臺實例信息一欄查看:https://imagesearch.console.aliyun.com/overview SetInstanceName("XXXXXXXX"). // 必填,圖片名稱不可修改。 SetPicName("test"). // 必填,商品ID 不可修改。 SetProductId("php"). // 選填,整數類型屬性,可用于查詢時過濾,查詢時會返回改字段。 SetIntAttr(100). // 選填,字符串類型屬性,最多支持 128個字符。可用于查詢時過濾,查詢時會返回該字段。 SetStrAttr("xxxx"). // 選填,用戶自定義的內容,最多支持4096個字符。 SetCustomContent("xxx") // 調用api resp, err := client.UpdateImage(request) if err != nil { fmt.Println(err.Error()) } fmt.Println(resp.Body) }
結果示例
{ "Code": 0, "RequestId": "63AB5A70-D314-13F9-AB28-0A7F03C7FC85", "Success": true }
Detail接口
代碼示例
package main import ( "fmt" "os" rpc "github.com/alibabacloud-go/darabonba-openapi/v2/client" imagesearch "github.com/alibabacloud-go/imagesearch-20201214/v4/client" util "github.com/alibabacloud-go/tea-utils/v2/service" ) func main() { // 初始化 config。 // 創建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm // 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。 // 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。 // 本示例以將AccessKey ID和AccessKey Secret保存在環境變量為例說明。您也可以根據業務需要,保存到配置文件里。 var config = new(rpc.Config).SetAccessKeyId(os.Getenv("CC_AK_ENV")). SetAccessKeySecret(os.Getenv("CC_SK_ENV")). SetType("access_key"). // 請更換成您購買實例的區域,例如購買的是杭州區域,則為"imagesearch.cn-hangzhou.aliyuncs.com" SetEndpoint("imagesearch.cn-shanghai.aliyuncs.com"). // 以下為內網(VPC)訪問方式 // 說明:內網(VPC)訪問:僅限同區域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區域。 // SetEndpointType("internal"). // 如果是內網訪問圖像搜索服務,則endpointType為必填項,值統一為"internal" // SetEndpoint("imagesearch-vpc.cn-shanghai.aliyuncs.com"). // 為內網訪問(VPC)地址,請您更換為您購買實例的區域,例如您購買實例的區域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" // 請您更換成您購買實例的區域,例如您購買的實例區域為杭州,則更換為"cn-hangzhou" SetRegionId("cn-shanghai") // 創建客戶端。 client, err := imagesearch.NewClient(config) if err != nil { panic(err) } request := new(imagesearch.DetailRequest). // 必填,圖像搜索實例名稱。注意是實例名稱不是實例ID。購買后通過上云層管控臺實例信息一欄查看:https://imagesearch.console.aliyun.com/overview SetInstanceName("XXXXXXXX") // 調用 api。 resp, err := client.Detail(request) if err != nil { fmt.Println(err.Error()) } fmt.Println(resp.Body) }
結果示例
{ "Instance": { "Capacity": 10, "Name": "xxxxx", "Qps": 1, "Region": "cn-shanghai", "ServiceType": 0, "TotalCount": 99999, "UtcCreate": "1620382716000", "UtcExpireTime": "1623081600000" }, "RequestId": "13993EC0-C212-1BDC-8337-8D343A5510E6", "Success": true }
DumpMeta接口
代碼示例
package main import ( "fmt" "os" rpc "github.com/alibabacloud-go/darabonba-openapi/v2/client" imagesearch "github.com/alibabacloud-go/imagesearch-20201214/v4/client" util "github.com/alibabacloud-go/tea-utils/v2/service" ) func main() { // 初始化 config // 創建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm // 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。 // 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。 // 本示例以將AccessKey ID和AccessKey Secret保存在環境變量為例說明。您也可以根據業務需要,保存到配置文件里。 var config = new(rpc.Config).SetAccessKeyId(os.Getenv("CC_AK_ENV")). SetAccessKeySecret(os.Getenv("CC_SK_ENV")). SetType("access_key"). // 請更換成您購買實例的區域,例如購買的是杭州區域,則為"imagesearch.cn-hangzhou.aliyuncs.com" SetEndpoint("imagesearch.cn-shanghai.aliyuncs.com"). // 以下為內網(VPC)訪問方式 // 說明:內網(VPC)訪問:僅限同區域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區域。 // SetEndpointType("internal"). // 如果是內網訪問圖像搜索服務,則endpointType為必填項,值統一為"internal" // SetEndpoint("imagesearch-vpc.cn-shanghai.aliyuncs.com"). // 為內網訪問(VPC)地址,請您更換為您購買實例的區域,例如您購買實例的區域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" // 請您更換成您購買實例的區域,例如您購買的實例區域為杭州,則更換為"cn-hangzhou" SetRegionId("cn-shanghai") // 創建客戶端 client, err := imagesearch.NewClient(config) if err != nil { panic(err) } request := new(imagesearch.DumpMetaRequest). // 必填,圖像搜索實例名稱。注意是實例名稱不是實例ID。購買后通過上云層管控臺實例信息一欄查看:https://imagesearch.console.aliyun.com/overview SetInstanceName("XXXXXXXX") // 調用 api。 resp, err := client.DumpMeta(request) if err != nil { fmt.Println(err.Error()) } fmt.Println(resp.Body) }
結果示例
{ RequestId=FC4191AA-1D5B-1001-9A70-18FBB2BD265B, Data={ DumpMetaStatus=PROCESSING, Id=567 }, Success=true }
DumpMetaList接口
代碼示例
package main import ( "fmt" "os" rpc "github.com/alibabacloud-go/darabonba-openapi/v2/client" imagesearch "github.com/alibabacloud-go/imagesearch-20201214/v4/client" util "github.com/alibabacloud-go/tea-utils/v2/service" ) func main() { // 初始化 config // 創建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm // 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。 // 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。 // 本示例以將AccessKey ID和AccessKey Secret保存在環境變量為例說明。您也可以根據業務需要,保存到配置文件里。 var config = new(rpc.Config).SetAccessKeyId(os.Getenv("CC_AK_ENV")). SetAccessKeySecret(os.Getenv("CC_SK_ENV")). SetType("access_key"). // 請更換成您購買實例的區域,例如購買的是杭州區域,則為"imagesearch.cn-hangzhou.aliyuncs.com" SetEndpoint("imagesearch.cn-shanghai.aliyuncs.com"). // 以下為內網(VPC)訪問方式 // 說明:內網(VPC)訪問:僅限同區域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區域。 // SetEndpointType("internal"). // 如果是內網訪問圖像搜索服務,則endpointType為必填項,值統一為"internal" // SetEndpoint("imagesearch-vpc.cn-shanghai.aliyuncs.com"). // 為內網訪問(VPC)地址,請您更換為您購買實例的區域,例如您購買實例的區域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" // 請您更換成您購買實例的區域,例如您購買的實例區域為杭州,則更換為"cn-hangzhou" SetRegionId("cn-shanghai") // 創建客戶端 client, err := imagesearch.NewClient(config) if err != nil { panic(err) } request := new(imagesearch.DumpMetaListRequest). // 必填,圖像搜索實例名稱。注意是實例名稱不是實例ID。購買后通過上云層管控臺實例信息一欄查看:https://imagesearch.console.aliyun.com/overview SetInstanceName("XXXXXXXX"). // 選填,任務id。 SetId(1464). // 選填,返回結果起始位置,默認1。 SetPageNumber(1). // 選填,返回結果數量,默認20。 SetPageSize(1) // 調用api。 resp, err := client.DumpMetaList(request) if err != nil { fmt.Println(err.Error()) } fmt.Println(resp.Body) }
結果示例
{ 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接口
代碼示例
package main import ( "fmt" "os" rpc "github.com/alibabacloud-go/darabonba-openapi/v2/client" imagesearch "github.com/alibabacloud-go/imagesearch-20201214/v4/client" util "github.com/alibabacloud-go/tea-utils/v2/service" ) func main() { // 初始化 config // 創建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm // 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。 // 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。 // 本示例以將AccessKey ID和AccessKey Secret保存在環境變量為例說明。您也可以根據業務需要,保存到配置文件里。 var config = new(rpc.Config).SetAccessKeyId(os.Getenv("CC_AK_ENV")). SetAccessKeySecret(os.Getenv("CC_SK_ENV")). SetType("access_key"). // 請更換成您購買實例的區域,例如購買的是杭州區域,則為"imagesearch.cn-hangzhou.aliyuncs.com" SetEndpoint("imagesearch.cn-shanghai.aliyuncs.com"). // 以下為內網(VPC)訪問方式 // 說明:內網(VPC)訪問:僅限同區域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區域。 // SetEndpointType("internal"). // 如果是內網訪問圖像搜索服務,則endpointType為必填項,值統一為"internal" // SetEndpoint("imagesearch-vpc.cn-shanghai.aliyuncs.com"). // 為內網訪問(VPC)地址,請您更換為您購買實例的區域,例如您購買實例的區域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" // 請您更換成您購買實例的區域,例如您購買的實例區域為杭州,則更換為"cn-hangzhou" SetRegionId("cn-shanghai") // 創建客戶端 client, err := imagesearch.NewClient(config) if err != nil { panic(err) } request := new(imagesearch.IncreaseInstanceRequest). // 必填,圖像搜索實例名稱。注意是實例名稱不是實例ID。購買后通過上云層管控臺實例信息一欄查看:https://imagesearch.console.aliyun.com/overview SetInstanceName("XXXXXXXX"). // 必填,oss 中 bucket名稱。 SetBucketName("bucketName"). // 必填,路徑,必須 / 開頭, 非 / 結尾。 // 此路徑下需要提前準備好 increment.meta 文件,可參考,用戶指南下的批量操作文檔。 SetPath("/public/xxx"). // 選填,請求成功回調地址,http(s)://。 SetCallbackAddress("http://xxx/xxx") // 調用 api。 resp, err := client.IncreaseInstance(request) if err != nil { fmt.Println(err.Error()) } fmt.Println(resp.Body) }
結果示例
{ RequestId=F9BAD635-3031-1EBB-BE9E-E9FCB318A28C, Data={ IncrementStatus=PROCESSING, Id=1470 }, Success=true }
BatchTaskList接口
代碼示例
package main import ( "fmt" "os" rpc "github.com/alibabacloud-go/darabonba-openapi/v2/client" imagesearch "github.com/alibabacloud-go/imagesearch-20201214/v4/client" util "github.com/alibabacloud-go/tea-utils/v2/service" ) func main() { // 初始化 config // 創建AK/SK參考:http://bestwisewords.com/document_detail/116401.htm // 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。 // 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。 // 本示例以將AccessKey ID和AccessKey Secret保存在環境變量為例說明。您也可以根據業務需要,保存到配置文件里。 var config = new(rpc.Config).SetAccessKeyId(os.Getenv("CC_AK_ENV")). SetAccessKeySecret(os.Getenv("CC_SK_ENV")). SetType("access_key"). // 請更換成您購買實例的區域,例如購買的是杭州區域,則為"imagesearch.cn-hangzhou.aliyuncs.com" SetEndpoint("imagesearch.cn-shanghai.aliyuncs.com"). // 以下為內網(VPC)訪問方式 // 說明:內網(VPC)訪問:僅限同區域ECS或資源的訪問,例如您購買的圖像搜索實例是華東2(上海),那么您的ECS或資源也必須在華東2(上海)才能通過內網VPC地址訪問圖搜服務,否則會調用不通,如果遇到調用不通,請先檢查您的ECS或資源與圖像搜索是否在同一個區域。 // SetEndpointType("internal"). // 如果是內網訪問圖像搜索服務,則endpointType為必填項,值統一為"internal" // SetEndpoint("imagesearch-vpc.cn-shanghai.aliyuncs.com"). // 為內網訪問(VPC)地址,請您更換為您購買實例的區域,例如您購買實例的區域為杭州,則為"imagesearch-vpc.cn-hangzhou.aliyuncs.com" // 請您更換成您購買實例的區域,例如您購買的實例區域為杭州,則更換為"cn-hangzhou" SetRegionId("cn-shanghai") // 創建客戶端 client, err := imagesearch.NewClient(config) if err != nil { panic(err) } request := new(imagesearch.IncreaseListRequest). // 必填,圖像搜索實例名稱。注意是實例名稱不是實例ID。購買后通過 上云層管控臺實例信息一欄查看:https://imagesearch.console.aliyun.com/overview SetInstanceName("XXXXXXXX"). // 選填,批量任務id。 SetId(1470). // 選填,查詢oss 的 BucketName。 SetBucketName("bucketName"). // 選填,查詢oss 的 path 路徑。 SetPath("xx"). // 選填,返回結果起始位置,默認1。 SetPageNumber(1). // 選填,返回結果數量,默認20。 SetPageSize(1) // 調用 api。 resp, err := client.DumpMetaList(request) if err != nil { fmt.Println(err.Error()) } fmt.Println(resp.Body) }
結果示例
{ "Data": { "Increments": { "Instance": [ { "BucketName": "xxxx", "Code": "0", "ErrorUrl": "https://xxTqoxxres=16706x\u0xM%3D", "Id": 1470, "Msg": "success", "Path": "/x/x", "Status": "NORMAL", "UtcCreate": "1639107872000", "UtcModified": 1639125540000 } ] }, "PageNumber": 1, "PageSize": 1, "TotalCount": 1 }, "RequestId": "75D08E30-0161-158F-806A-A6C4C2CE04FC" }
文檔內容是否對您有幫助?