通過閱讀本文,您可以了解通過服務端SDK調用OpenAPI審核智能媒體服務媒資信息的示例代碼。
示例代碼
您可以通過阿里云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保存在環境變量為例說明。
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)
}
// 創建審核模板。
templateName := "sdk_sample_censor_template"
templateType := int32(7)
templateSubType := int32(1)
censorTemplateConfig := "{\"Scene\":[\"porn\",\"terrorism\"],\"Scope\":[\"title\",\"video\",\"audio\",\"cover\"]}"
createCustomTemplateRequest := &ice.CreateCustomTemplateRequest{
Name: &templateName,
Type: &templateType,
Subtype: &templateSubType,
TemplateConfig: &censorTemplateConfig,
}
createCustomTemplateResponse, err := iceClient.CreateCustomTemplate(createCustomTemplateRequest)
fmt.Println(createCustomTemplateResponse, err)
// 提交媒體審核任務。
templateId := createCustomTemplateResponse.Body.CustomTemplate.TemplateId
inputType := "Media"
inputMedia := "3945e42d-1823498****"
output := "oss://testbucket/censor/snapshot-{Count}.jpg"
submitMediaCensorJobRequest := &ice.SubmitMediaCensorJobRequest{
Input: &ice.SubmitMediaCensorJobRequestInput{
Type: &inputType,
Media: &inputMedia,
},
Output: &output,
TemplateId: templateId,
}
submitMediaCensorJobResponse, err := iceClient.SubmitMediaCensorJob(submitMediaCensorJobRequest)
fmt.Println(submitMediaCensorJobResponse, err)
// 查詢媒體審核任務作業詳情。
jobId := submitMediaCensorJobResponse.Body.JobId
queryMediaCensorJobDetailRequest := &ice.QueryMediaCensorJobDetailRequest{
JobId: jobId,
}
queryMediaCensorJobDetailResponse, err := iceClient.QueryMediaCensorJobDetail(queryMediaCensorJobDetailRequest)
fmt.Println(queryMediaCensorJobDetailResponse, err)
// 查詢媒體審核任務作業列表。
queryMediaCensorJobListRequest := &ice.QueryMediaCensorJobListRequest{
JobIds: jobId,
}
queryMediaCensorJobListResponse, err := iceClient.QueryMediaCensorJobList(queryMediaCensorJobListRequest)
fmt.Println(queryMediaCensorJobListResponse, err)
}
相關接口
文檔內容是否對您有幫助?