全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网
消息队列 MQ

创建订阅信息

更新时间:2017-08-11 16:01:39

本接口限企业铂金版客户专用,请前往铂金版购买页面查看详情。

描述

OnsSubscribeCreate 接口用于在服务器上创建对特定 Topic 的订阅关系。

使用场景

新应用上线时,在注册 Topic 资源后,如果需要订阅消息,需要首先在 MQ 控制台或者调用该 API 申请注册对目标 Topic 的注册关系,然后才能使用注册的 CID 订阅消息。

请求参数

名称 类型 是否必须 描述
OnsRegionId String 当前查询 MQ 所在区域,可以通过 OnsRegionList 方法获取
OnsPlatform String 该请求来源,默认是从 POP 平台
PreventCache Long 用于 CSRF 校验,设置为系统当前时间即可
ConsumerId String 创建的消息消费集群的 CID
Topic String 订阅的 Topic

返回参数

名称 类型 描述
RequestId String 为公共参数,每个请求独一无二
HelpUrl String 帮助链接

相关 API

  • OnsSubscribeDelete:删除订阅关系
  • OnsSubscribeList:查询订阅关系列表
  • OnsSubscribeGet:精确查询订阅关系信息

使用示例

本示例在 daily 区域创建名为 CID_MingduanTest 的订阅关系用于消费 Mingduan_67dd 的消息。

  1. public static void main(String []args) {
  2. String regionId = "cn-hangzhou";
  3. String accessKey = "XXXXXXXXXXXXXXXXX";
  4. String secretKey = "XXXXXXXXXXXXXXXXX";
  5. String endPointName ="cn-hangzhou";
  6. String productName ="Ons";
  7. String domain ="ons.cn-hangzhou.aliyuncs.com";
  8. /**
  9. *根据自己需要访问的区域选择Region,并设置对应的接入点
  10. */
  11. try {
  12. DefaultProfile.addEndpoint(endPointNameregionIdproductNamedomain);
  13. } catch (ClientException e) {
  14. e.printStackTrace();
  15. }
  16. IClientProfile profile= DefaultProfile.getProfile(regionIdaccessKeysecretKey);
  17. IAcsClient iAcsClient= new DefaultAcsClient(profile);
  18. OnsSubscriptionCreateRequest request = new OnsSubscriptionCreateRequest();
  19. /**
  20. *ONSRegionId是指你需要API访问ONS哪个区域的资源
  21. *该值必须要根据OnsRegionList方法获取的列表来选择和配置,因为OnsRegionId是变动的,不能够写固定值
  22. */
  23. request.setOnsRegionId("daily");
  24. request.setPreventCache(System.currentTimeMillis());
  25. request.setAcceptFormat(FormatType.JSON);
  26. request.setTopic("Mingduan_67dd");
  27. request.setConsumerId("CID_MingduanTest");
  28. try {
  29. OnsSubscriptionCreateResponse response=iAcsClient.getAcsResponse(request);
  30. System.out.println(response.getRequestId());
  31. } catch (ServerException e) {
  32. e.printStackTrace();
  33. } catch (ClientException e) {
  34. e.printStackTrace();
  35. }
  36. }
本文导读目录