通过阅读本文,您可以了解通过服务端SDK调用OpenAPI管理智能媒体服务内容库的示例代码。
使用说明
目前仅支持通过OSS文件注册媒资内容。
示例代码
您可以通过阿里云OpenAPI开发者门户在线调试。
package main
import (
"fmt"
openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client"
ice "github.com/alibabacloud-go/ice-20201109/v2/client"
"github.com/aliyun/credentials-go/credentials"
"github.com/alibabacloud-go/tea/tea"
)
func main() {
// 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。
// 本示例以将AccessKey ID和 AccessKey Secret保存在环境变量为例说明。配置方法请参见:https://help.aliyun.com/document_detail/378661.html。
credential, _err := credentials.NewCredential(nil)
if _err != nil {
panic(_err)
}
iceClient, _err := ice.NewClient(&openapi.Config{
Credential: credential,
Endpoint: tea.String("ice.cn-shanghai.aliyuncs.com"),
})
// 如需硬编码AccessKey ID和AccessKey Secret,代码如下,强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。
// config := new(openapi.Config)
// config.SetAccessKeyId("<accessKeyId>").
// SetAccessKeySecret("<accessKeySecret>").
// SetRegionId("<regionId>").
// SetEndpoint("<endpoint>")
// iceClient, _err := ice.NewClient(config)
if _err != nil {
panic(_err)
}
// 注册媒资。
inputUrl := "OSS://***"
mediaType := "video"
mediaInfo := ice.RegisterMediaInfoRequest{
InputURL: &inputUrl,
MediaType: &mediaType,
}
result, err := iceClient.RegisterMediaInfo(&mediaInfo)
fmt.Println(result, err)
// 获取单个媒资内容。
mediaId := "****94bef6e348c8b6ed59c88cda****"
getMediaInfoRequest := ice.GetMediaInfoRequest{
MediaId: &mediaId,
}
getMediaInfoResult, err := iceClient.GetMediaInfo(&getMediaInfoRequest)
fmt.Println(getMediaInfoResult, err)
// 修改内容。
coverUrl := "https://****/test.jpg"
updateMediainfoRequest := ice.UpdateMediaInfoRequest{
MediaId: &mediaId,
CoverURL: &coverUrl,
}
updateMediaInfoResult, err := iceClient.UpdateMediaInfo(&updateMediainfoRequest)
fmt.Println(updateMediaInfoResult, err)
// 检索媒资内容。
maxResults := int32(10)
listMediaBasicInfosRequest := ice.ListMediaBasicInfosRequest{
MaxResults: &maxResults,
}
listMediaBasicInfosResult, err := iceClient.ListMediaBasicInfos(&listMediaBasicInfosRequest)
fmt.Println(listMediaBasicInfosResult, err)
}
相关接口
文档内容是否对您有帮助?