图像搜索 IMAGESEARCH-更新数据示例

时间:2024-08-02 14:56:13

更新数据示例

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

更新数据示例代码只需将AK/SK信息替换为实际AK/SK,代码中可以使用初始化UpdateParam中的CustomNumTags、CustomTags、Desc、ItemId配置服务输入参数,配置完成后运行即可。

  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.RunUpdateDataRequest{}
        request.ServiceName = "service_name"
        var listCustomNumTagsbody = map[string]float64{
            "key": float64(1),
        }
        var listCustomTagsbody = map[string]string{
            "key": "value",
        }
        descUpdateParam:= "description"
        request.Body = &model.UpdateParam{
           CustomNumTags: listCustomNumTagsbody,
           CustomTags: listCustomTagsbody,
           Desc: &descUpdateParam,
           ItemId: "item_id",
        }
        response, err := client.RunUpdateData(request)
        if err == nil {
            fmt.Printf("%+v\n", response)
        } else {
            fmt.Println(err)
        }
    }
  2. 执行示例代码文件,控制台输出更新数据结果即表示程序执行成功。
    RunUpdateDataResponse 
    {
        "result": "success"
    }
support.huaweicloud.com/sdkreference-imagesearch/imagesearch_03_0033.html