本文介紹視頻直播服務端Go SDK的使用方法和示例代碼。以添加直播域名接口為例,幫助您快速掌握視頻直播接口的使用方法。
前提條件
服務端已安裝GO最新版本。
操作步驟
執行如下命令安裝Go SDK。
go get github.com/aliyun/alibaba-cloud-sdk-go/sdk
創建一個名為
config.ini
的配置文件放在建議目錄conf中,其中包含AK/SK信息。配置文件的內容如下:access_key_id = YOUR_ACCESS_KEY_ID access_key_secret = YOUR_ACCESS_KEY_SECRET
請將
YOUR_ACCESS_KEY_ID
和YOUR_ACCESS_KEY_SECRET
替換為您的實際AK/SK值。需要在工程中配置相應的AccessKey ID 和AccessKey Secret,推薦使用啟動參數和環境變量的形式。
AccessKey ID和AccessKey Secret獲取方式,請參見創建AccessKey。
配置環境變量的具體操作,請參見在Linux、macOS和Windows系統配置環境變量。
初始化客戶端。
package main
import (
"fmt"
"github.com/aliyun/alibaba-cloud-sdk-go/services/live"
"github.com/go-ini/ini"
)
func main() {
cfg, err := ini.Load("conf/config.ini")
if err != nil {
fmt.Print(err.Error())
}
// 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。
// 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。
// 本示例通過從配置文件中讀取AccessKey,來實現API訪問的身份驗證。
accessKeyID := cfg.Section("").Key("access_key_id").String()
accessKeySecret := cfg.Section("").Key("access_key_secret").String()
liveClient, err := live.NewClientWithAccessKey("cn-shanghai", accessKeyID, accessKeySecret)
if err != nil {
fmt.Print(err.Error())
}
調用接口。此處以調用添加直播域名接口為例介紹。
package main
import (
"fmt"
"github.com/aliyun/alibaba-cloud-sdk-go/services/live"
"github.com/go-ini/ini"
)
func main() {
cfg, err := ini.Load("conf/config.ini")
if err != nil {
fmt.Print(err.Error())
}
// 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。
// 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。
// 本示例通過從配置文件中讀取AccessKey,來實現API訪問的身份驗證。
accessKeyID := cfg.Section("").Key("access_key_id").String()
accessKeySecret := cfg.Section("").Key("access_key_secret").String()
liveClient, err := live.NewClientWithAccessKey("cn-shanghai", accessKeyID, accessKeySecret)
if err != nil {
fmt.Print(err.Error())
}
request := live.CreateAddLiveDomainRequest()
request.Scheme = "https"
request.LiveDomainType = "liveVideo"
request.Region = "XXX"
request.DomainName = "XXX "
response, err := liveClient.AddLiveDomain(request)
if err != nil {
fmt.Print(err.Error())
}
fmt.Printf("response is %#v\n", response)
}
更多API示例,請參見API概覽。
文檔內容是否對您有幫助?