通过阅读本文,您可以了解通过服务端SDK调用OpenAPI审核智能媒体服务媒资信息的示例代码。

示例代码

您可以通过阿里云OpenAPI开发者门户在线调试。

package com.aliyun.ice.sample;

import com.aliyun.ice20201109.Client;
import com.aliyun.ice20201109.models.*;
import com.aliyun.teaopenapi.models.Config;

public class Sample {

    public static void main() throws Exception {

        // 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。
        // 本示例以将AccessKey ID和 AccessKey Secret保存在环境变量为例说明。配置方法请参见:https://help.aliyun.com/document_detail/378657.html
        com.aliyun.credentials.Client credentialClient = new com.aliyun.credentials.Client();
        Config config = new Config();
        config.setCredential(credentialClient);

        // 如需硬编码AccessKey ID和AccessKey Secret,代码如下,但强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。
        // config.accessKeyId = <yourAccessKeyId>;
        // config.accessKeySecret = <yourAccessKeySecret>;

        config.endpoint = "ice.cn-shanghai.aliyuncs.com";
        Client client = new Client(config);

        // 创建审核模板
        String censorTemplateConfig = "{\"Scene\":[\"porn\",\"terrorism\"],\"Scope\":[\"title\",\"video\",\"audio\",\"cover\"]}";
        CreateCustomTemplateRequest createCustomTemplateRequest = new CreateCustomTemplateRequest()
            .setName("sdk_sample_censor_template")
            .setType(7)
            .setSubtype(1)
            .setTemplateConfig(censorTemplateConfig);
        CreateCustomTemplateResponse createCustomTemplateResponse = client.createCustomTemplate(createCustomTemplateRequest);
        String templateId = createCustomTemplateResponse.getBody().getCustomTemplate().getTemplateId();
        System.out.println("template id: " + templateId);

        // 提交媒体审核任务
        SubmitMediaCensorJobRequest submitMediaCensorJobRequest = new SubmitMediaCensorJobRequest()
            .setInput(new SubmitMediaCensorJobRequest.SubmitMediaCensorJobRequestInput()
                      .setType("Media")
                      .setMedia("3945e42d01823498****"))
            .setOutput("oss://testbucket/censor/snapshot-{Count}.jpg")
            .setTemplateId(templateId);
        SubmitMediaCensorJobResponse submitMediaCensorJobResponse = client.submitMediaCensorJob(submitMediaCensorJobRequest);
        String jobId = submitMediaCensorJobResponse.getBody().getJobId();
        System.out.println("job id: " + jobId);

        // 查询审核任务详细信息
        QueryMediaCensorJobDetailRequest queryMediaCensorJobDetailRequest = new QueryMediaCensorJobDetailRequest()
            .setJobId(jobId);
        QueryMediaCensorJobDetailResponse queryMediaCensorJobDetailResponse = client.queryMediaCensorJobDetail(queryMediaCensorJobDetailRequest);
        System.out.println("request id: " + queryMediaCensorJobDetailResponse.getBody().getRequestId());

        // 查询媒体审核任务作业列表
        QueryMediaCensorJobListRequest queryMediaCensorJobListRequest = new QueryMediaCensorJobListRequest()
            .setJobIds(jobId);
        QueryMediaCensorJobListResponse queryMediaCensorJobListResponse = client.queryMediaCensorJobList(queryMediaCensorJobListRequest);
        System.out.println("request id: " + queryMediaCensorJobListResponse.getBody().getRequestId());
    }
}

相关接口