我们为您提供了SCA Java SDK以及阿里云核心库的Maven项目依赖及jar包,您可以编写代码调用SDK来实现对SCA服务的访问。

  • 以下文档适用于版本号大于3.0.0的SDK,与之前的版本不完全兼容(旧版本SDK文档可以这里找到,旧版本不推荐使用)。
  • 本文向您介绍SCA Java SDK的安装、使用及注意事项,关于Java SDK的更多说明详见:Java SDK
  • 如果您还未开通或者还不了解阿里云SCA服务,请登录SCA产品主页了解。
  • 如果您还未创建AccessKeyId和AccessKeySecret,请到阿里云Access Key管理创建Access Key
  • 各API详细出入参说明请查看左侧目录中的 开发之南 -> API参考 中的文档,例如 上传音频质检

SDK 下载

推荐使用Maven管理依赖,当前SDK最新版本号可在 https://github.com/aliyun/aliyun-openapi-java-sdk/blob/master/aliyun-java-sdk-qualitycheck/ChangeLog.txt 中查看,在pom.xml中添加如下依赖:

       <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>aliyun-java-sdk-qualitycheck</artifactId>
            <version>3.0.7</version>
        </dependency>
	<dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>aliyun-java-sdk-core</artifactId>
            <version>4.0.6</version>
        </dependency>
			

调用示例

import com.aliyuncs.http.FormatType;
import com.aliyuncs.qualitycheck.model.v20190115.UploadDataRequest;
import com.aliyuncs.qualitycheck.model.v20190115.UploadDataResponse;
import org.junit.Before;
import org.junit.Test;

import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.exceptions.ServerException;
import com.aliyuncs.http.HttpResponse;
import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.profile.IClientProfile;

public class TestApi {

    IAcsClient client = null;

    @Before
    public void init() throws ClientException {
        // 构建一个 Aliyun Client, 用于发起请求
        // 构建Aliyun Client时需要设置AccessKeyId和AccessKeySevcret
        // SCA API入口位于华东 1 (杭州) , 这里Region固定填写"cn-hangzhou"
        // <ak id>为您自己的access key id
        // <ak secret>为您自己的acess key secret
        IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", "<ak Id>", "<ak secret>");
        //指定Endpoint,以下值为固定
        DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", "Qualitycheck", "qualitycheck.cn-hangzhou.aliyuncs.com");

        client = new DefaultAcsClient(profile);
    }


    /**
     * 取得反序列化的实例对象 当http status>=200且<300 表示API调用成功;当http status>=300且<500
     * SDK抛ClientException;当http status >=500 SDK 抛 ServerException
     * 注意,Request/Response会成对儿出现,其前缀会根据调用的相关接口进行变更,
     * 例如调用获取结果接口时使用 GetResultRequest/GetResultResponse
     */
    @Test
    public void uploadDataSample(String aliUid) {
        UploadDataRequest req = new UploadDataRequest();
        req.setJsonStr("<Upload Data Json>");
        try {
            UploadDataResponse response = client.getAcsResponse(req);
            // do something.
            System.out.println(response.getCode());
            System.out.println(response.getMessage());
            System.out.println(com.alibaba.fastjson.JSON.toJSONString(response));
        } catch (ServerException e) {
            e.printStackTrace();
        } catch (ClientException e) {
            e.printStackTrace();
        }
    }


    /**
     * 取得原始的api调用结果
     * 注意,Request/Response,其前缀会根据调用的相关接口进行变更,
     * 例如调用获取结果接口时使用 GetResultRequest/GetResultResponse
     */
    @Test
    public void uploadDataActionSample(String aliUid) {
        UploadDataRequest req = new UploadDataRequest();
        //定义返回的报文格式
        //req.setAcceptFormat(FormatType.JSON);
        req.setJsonStr("<Upload Data Json>");
        // describeRegionsRequest.setRegionId("cn-hangzhou");//指定要访问的Region,仅对当前请求生效,不改变client的默认设置。
        try {
            HttpResponse httpResponse = client.doAction(req);
            System.out.println(req.getUrl());
            System.out.println(httpResponse.getUrl());
            byte[] content = httpResponse.getHttpContent();
	    System.out.println(new String(content));
            // do something.
        } catch (ServerException e) {
            e.printStackTrace();
        } catch (ClientException e) {
            e.printStackTrace();
        }
    }
}