更新时间:2023-11-21 GMT+08:00
分享

添加数据示例

本章节对添加数据AK/SK方式使用SDK进行示例说明。

添加数据示例代码只需将AK/SK信息替换为实际AK/SK,代码中可以使用AddDataParam类中的ImageUrl、Keywords、CustomNumTags、CustomTags、Desc、ItemId、Force配置服务输入参数,配置完成后运行即可。

  1. 添加数据调用示例代码如下:
    package main
    
    import (
    	"fmt"
    	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
        imagesearch "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/imagesearch/v2"
    	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/imagesearch/v2/model"
        region "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/region"
    )
    
    func main() {
       // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全;
       // 本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK。
       ak := os.Getenv("HUAWEICLOUD_SDK_AK")
       sk := os.Getenv("HUAWEICLOUD_SDK_SK")
    
        iamEndpoint := "https://iam.cn-north-4.myhuaweicloud.com"
        endpoint := "https://mms.cn-north-4.myhuaweicloud.com"
        projectId := "project_id"
    
        auth := basic.NewCredentialsBuilder().
            WithAk(ak).
            WithSk(sk).
            WithIamEndpointOverride(iamEndpoint).
            WithProjectId(projectId).
            Build()
    	
        // 初始化客户端
        client := imagesearch.NewImageSearchClient(
            imagesearch.ImageSearchClientBuilder().
    	// 设置region, 示例中为北京四
                WithRegion(region.NewRegion("cn-north-4", endpoint)).
                WithCredential(auth).
                Build())
    
        request := &model.RunAddDataRequest{}
        request.ServiceName = "service_name"
    	var listCustomNumTagsbody = map[string]float64{
            "key": float64(1),
        }
    	var listCustomTagsbody = map[string]string{
            "key": "value",
        }
        // 替换为公网可以访问的图片地址
    	imageUrlAddDataParam:= "https://bucketname.obs.cn-north-4.myhuaweicloud.com/image/test1.jpg"
    	request.Body = &model.AddDataParam{
    		ImageUrl: &imageUrlAddDataParam,
    		CustomNumTags: listCustomNumTagsbody,
    		CustomTags: listCustomTagsbody,
    		ItemId: "item_id",
    	}
    	response, err := client.RunAddData(request)
    	if err == nil {
            fmt.Printf("%+v\n", response)
        } else {
            fmt.Println(err)
        }
    }
  2. 添加数据结果输出到控制台表示执行成功。
    RunAddDataResponse 
    {
        "result": "success",
        "data": {
            "image_info": {
                "objects": [
                    {
                        "box": "135,489,1117,1341",
                        "category": 1,
                        "category_name": "top"
                    }
                ]
            }
        }
    }
分享:

    相关文档

    相关产品