日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

Go SDK使用手冊

本文介紹了Go SDK的安裝方法、示例代碼以及如何使用Go SDK發(fā)布事件。

SDK簡介

事件總線EventBridge的SDK分為管控API SDK和數(shù)據(jù)API SDK,示例代碼和使用的依賴有所不同。

  • 管控API SDK:對控制臺頁面進行操作使用的SDK。

  • 數(shù)據(jù)API SDK:事件數(shù)據(jù)的通道,目前只有發(fā)送事件(PutEvents)屬于此類。

前提條件

您已完成以下操作:

環(huán)境準(zhǔn)備

  • 環(huán)境要求

    安裝Golang1.12.0以上的版本。更多信息,請參見安裝Golang

  • 查看語言版本

    執(zhí)行命令go version查看Go語言版本。

管控API SDK

安裝SDK

  1. 執(zhí)行以下命令啟用Go mod。

    go env -w GO111MODULE=on
  2. 執(zhí)行以下命令設(shè)置Go mod代理。

    go env -w GOPROXY=https://goproxy.cn,direct 
  3. 執(zhí)行以下命令進行初始化,生成go.mod文件。

    go mod init
  4. 執(zhí)行以下命令安裝Go SDK。

    go get github.com/alibabacloud-go/eventbridge-20200401/v2  
  5. 執(zhí)行以下命令安裝打印端口。

    go get github.com/alibabacloud/tea-console

SDK示例

您可以在OpenAPI門戶通過調(diào)用API接口,自動生成對應(yīng)的SDK示例。具體操作,請參見如何自動生成SDK示例

數(shù)據(jù)API SDK

安裝SDK

  1. 執(zhí)行以下命令啟用Go mod。

    go env -w GO111MODULE=on
  2. 執(zhí)行以下命令設(shè)置Go mod代理。

    go env -w GOPROXY=https://goproxy.cn,direct 
  3. 執(zhí)行以下命令進行初始化,生成go.mod文件。

    go mod init
  4. 執(zhí)行以下命令安裝Go SDK。

    go get github.com/alibabacloud-go/eventbridge-sdk    
  5. 執(zhí)行以下命令安裝打印端口。

    go get github.com/alibabacloud/tea-console

SDK示例

數(shù)據(jù)API SDK目前只包含發(fā)布事件(PutEvents),如需使用Go SDK發(fā)布一個或多個事件,請參考以下示例代碼。

package main

import (
    "fmt"

    eventbridge "github.com/alibabacloud-go/eventbridge-sdk/eventbridge"
)

func main() {
    config := new(eventbridge.Config).
        SetAccessKeyId(os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID")).
        SetAccessKeySecret(os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")).
        SetEndpoint("<endpoint>")

    client, err := eventbridge.NewClient(config)
    if err != nil {
        panic(err)
    }

    event := new(eventbridge.CloudEvent).
        SetDatacontenttype("application/json").
        SetData([]byte("test")).
        SetId("id").
        SetSource("source").
        SetTime("2020-08-24T13:54:05.965Asia/Shanghai").
        SetSubject("1.0").
        SetType("type").
        SetExtensions(map[string]interface{}{
            "aliyuneventbusname": "BusName",
        })

    resp, err := client.PutEvents([]*eventbridge.CloudEvent{event})
    if err != nil {
        panic(err)
    }
    fmt.Println(resp)
}