ApsaraVideo Live の Go SDK を使用して API オペレーションを呼び出します。次の例では、ライブストリーミングドメインを追加する方法を説明します。
前提条件
Go 1.10.x 以降がインストールされていること。
手順
-
に移動します。[クイックスタート] タブで、ApsaraVideo Live SDK のインストール方法を見つけます。
[SDK 生成] を [V2.0 (推奨)] に、[言語] を [Go] に設定します。Go 1.10.x 以降を使用してください。[インストール方法] エリアで、
go get github.com/alibabacloud-go/live-20161101/v2コマンドを実行して SDK をインストールします。 -
プロジェクトを作成し、認証情報ツールを使用してアクセス認証情報を管理します。詳細については、「アクセス認証情報の管理」をご参照ください。
-
リクエストを送信し、レスポンスまたは例外を処理します。
// このファイルは自動生成されたものです。編集しないでください。 package main import ( "encoding/json" "strings" "fmt" "os" live20161101 "github.com/alibabacloud-go/live-20161101/v2/client" openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client" util "github.com/alibabacloud-go/tea-utils/v2/service" credential "github.com/aliyun/credentials-go/credentials" "github.com/alibabacloud-go/tea/tea" ) // 説明: // // アクセス認証情報を使用してクライアントを初期化します。 // // @return クライアント // // @throws 例外 func CreateClient () (_result *live20161101.Client, _err error) { // セキュリティを向上させるため、コードにアクセス認証情報をハードコードしないことを推奨します。認証情報の設定方法については、https://www.alibabacloud.com/help/document_detail/378661.html をご参照ください。 credential, _err := credential.NewCredential(nil) if _err != nil { return _result, _err } config := &openapi.Config{ Credential: credential, } // エンドポイントの詳細については、https://api.aliyun.com/product/live をご参照ください。 config.Endpoint = tea.String("live.aliyuncs.com") _result = &live20161101.Client{} _result, _err = live20161101.NewClient(config) return _result, _err } func _main (args []*string) (_err error) { client, _err := CreateClient() if _err != nil { return _err } addLiveDomainRequest := &live20161101.AddLiveDomainRequest{} runtime := &util.RuntimeOptions{} tryErr := func()(_e error) { defer func() { if r := tea.Recover(recover()); r != nil { _e = r } }() // API の戻り値を確認するには、戻り値を出力するコードを追加します。 _, _err = client.AddLiveDomainWithOptions(addLiveDomainRequest, runtime) if _err != nil { return _err } return nil }() if tryErr != nil { var error = &tea.SDKError{} if _t, ok := tryErr.(*tea.SDKError); ok { error = _t } else { error.Message = tea.String(tryErr.Error()) } // このコードはデモンストレーション用です。実際のプロジェクトでは、例外を無視せず、適切に処理する必要があります。 // エラーメッセージ fmt.Println(tea.StringValue(error.Message)) // 診断情報 var data interface{} d := json.NewDecoder(strings.NewReader(tea.StringValue(error.Data))) d.Decode(&data) if m, ok := data.(map[string]interface{}); ok { recommend, _ := m["Recommend"] fmt.Println(recommend) } _, _err = util.AssertAsString(error.Message) if _err != nil { return _err } } return _err } func main() { err := _main(tea.StringSlice(os.Args[1:])) if err != nil { panic(err) } }
その他のサンプルコードについては、「API リファレンス」をご参照ください。