全部产品

概述及准备

更新时间:2020-10-15 10:56:52

概述

小程序从创建到发布的整个流程中的操作,都可以通过调用 OpenAPI 来实现,实现用户服务端和 mPaaS 服务端的对接。

准备工作

在使用 OpenAPI 前,您需要先获取 AccessKeyApp ID 与 Workspace ID,并 配置 Maven 依赖配置文件上传

获取 AccessKey

AccessKey 包括 AccessKey IDAccessKey Secret点击此处 查看获取方式。

  • AccessKey ID:用于标识用户。
  • AccessKey Secret:用于验证用户的密钥,必须保密。

获取 App ID 与 Workspace ID

  1. 登录 mPaaS 控制台,进入应用。
  2. 总览 页,依次点击 代码配置) > 下载配置文件 > 立即下载),在右侧弹出的 代码配置 窗口中,您可以看到 App ID 和 Workspace ID 的值,如下图。
    config

配置 Maven 依赖

在使用 OpenAPI 之前,您需要完成以下 Maven 依赖配置。

  1. <dependency>
  2. <groupId>com.aliyun</groupId>
  3. <artifactId>aliyun-java-sdk-mpaas</artifactId>
  4. <version>1.1.1</version>
  5. </dependency>
  6. <dependency>
  7. <groupId>com.aliyun</groupId>
  8. <artifactId>aliyun-java-sdk-core</artifactId>
  9. <optional>true</optional>
  10. <version>[4.3.2,5.0.0)</version>
  11. </dependency>

使用示例

  1. private static final String REGION_ID = "cn-hangzhou"; //地域ID,默认为 cn-hangzhou
  2. private static final String ACCESS_KEY_ID = "*****************"; // RAM 账号的 AccessKey ID
  3. private static final String ACCESS_SECRET = "******************"; //RAM 账号的 AccessKey Secret
  4. private static final String PRODUCT = "mpaas"; // 产品名称
  5. private static final String END_POINT = "mpaas.cn-hangzhou.aliyuncs.com"; // 调用的 endpoint
  6. DefaultProfile.addEndpoint(REGION_ID, PRODUCT, END_POINT);
  7. DefaultProfile profile = DefaultProfile.getProfile(REGION_ID, ACCESS_KEY_ID, ACCESS_SECRET);
  8. IAcsClient iAcsClient = new DefaultAcsClient(profile);
  9. QueryMcubeVhostRequest queryMcubeVhostRequest = new QueryMcubeVhostRequest();
  10. queryMcubeVhostRequest.setAppId(APP_ID);
  11. queryMcubeVhostRequest.setWorkspaceId(WORKSPACE_ID);
  12. queryMcubeVhostRequest.setTenantId(TENANT_ID);
  13. QueryMcubeVhostResponse acsResponse = null;
  14. try {
  15. acsResponse = iAcsClient.getAcsResponse(queryMcubeVhostRequest);
  16. System.out.println(acsResponse.getResultCode());
  17. System.out.println(acsResponse.getQueryVhostResult());
  18. } catch (ClientException e) {
  19. e.printStackTrace();
  20. }

配置文件上传

由于在所有的 API 接口中均不允许出现文件流,所以需要上传的文件都应先调用上传工具类来将文件上传至 OSS,再将返回的 OSS 地址作为参数传递到指定的 API 中。

您可下载相关的文件的上传工具类 OssPostObject.java.zip

使用示例

  1. GetMcubeFileTokenRequest getMcubeFileTokenRequest = new GetMcubeFileTokenRequest();
  2. getMcubeFileTokenRequest.setAppId(APP_ID);
  3. getMcubeFileTokenRequest.setOnexFlag(true);
  4. getMcubeFileTokenRequest.setTenantId(TENANT_ID);
  5. getMcubeFileTokenRequest.setWorkspaceId(WORKSPACE_ID);
  6. GetMcubeFileTokenResponse acsResponse = iAcsClient.getAcsResponse(getMcubeFileTokenRequest);
  7. System.out.println(JSON.toJSONString(acsResponse));
  8. GetMcubeFileTokenResponse.GetFileTokenResult.FileToken fileToken = acsResponse.getGetFileTokenResult().getFileToken();
  9. OssPostObject ossPostObject = new OssPostObject();
  10. ossPostObject.setKey(fileToken.getDir());
  11. ossPostObject.setHost(fileToken.getHost());
  12. ossPostObject.setOssAccessId(fileToken.getAccessid());
  13. ossPostObject.setPolicy(fileToken.getPolicy());
  14. ossPostObject.setSignature(fileToken.getSignature());
  15. ossPostObject.setFilePath("your/local/file/path");
  16. String s = ossPostObject.postObject();

有关 GetMcubeFileTokenRequest 的说明请参见 获取上传文件 token