全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 阿里云办公 培训与认证 物联网
消息队列 MQ

搜索指定订阅信息

更新时间:2017-08-11 15:07:57

OnsSubscribeSearch 接口通过 Topic 或者 CID 信息搜索符合条件的 CID 信息。

使用场景

OnsSubscribeSearch 接口一般用于不确定 CID 名称的时候,可以通过 Topic 来搜索 CID 信息。

请求参数列表

名称 类型 是否必须 描述
OnsRegionId String 当前查询 MQ 所在区域,可以通过 OnsRegionList 方法获取
OnsPlatform String 该请求来源,默认是从 POP 平台
PreventCache Long 用于 CSRF 校验,设置为系统当前时间即可
Search String 搜索的关键词,可以是 Topic 或者 CID

返回参数列表

名称 类型 描述
RequestId String 为公共参数,每个请求独一无二
HelpUrl String 帮助链接
Data List(SubscribeInfoDo) 查询到的订阅关系集合

SubscribeInfoDo 数据结构

名称 类型 描述
Id Long 订阅信息在数据库中的索引编号
channelId Integer 该 Topic 所在区域 ID,0-ALIYUN,1-CLOUD,2,3,4
channelName String 该 Topic 所在区域名称,ALIYUN 代表阿里云,CLOUD 代表聚石塔,…
onsRegionId Long 该 Topic 所在区域 ID,就是 ONSRegionList 方法获取的内容
regionName String 该 Topic 所在区域名称
Owner String 该发布信息的拥有者
ConsumerId String 消费集群 ID
Topic String Topic 名称
Status Long 当前状态
StatusName String 状态名称,服务中,已下线等
CreateTime Long 创建时间
UpdateTime Long 最后更新时间

相关 API

  • OnsSubcribeCreate:创建订阅关系
  • OnsSubcribeDelete:删除订阅关系
  • OnsSubscribeList:获取订阅关系列表

使用示例

本示例通过设定搜索条件 CID_Mingduan 来获取符合的 CID 信息,并打印。

  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. OnsSubscriptionSearchRequest request = new OnsSubscriptionSearchRequest();
  19. /**
  20. *ONSRegionId是指你需要API访问MQ哪个区域的资源.
  21. *该值必须要根据OnsRegionList方法获取的列表来选择和配置,因为OnsRegionId是变动的,不能够写固定值
  22. */
  23. request.setOnsRegionId("daily");
  24. request.setPreventCache(System.currentTimeMillis());
  25. request.setAcceptFormat(FormatType.JSON);
  26. request.setSearch("CID_Mingduan");
  27. try {
  28. OnsSubscriptionSearchResponse response=iAcsClient.getAcsResponse(request);
  29. List<OnsSubscriptionSearchResponse.SubscribeInfoDo> subscribeInfoDoList=response.getData();
  30. for(OnsSubscriptionSearchResponse.SubscribeInfoDo subscribeInfoDo:subscribeInfoDoList){
  31. System.out.println(subscribeInfoDo.getId()+" "+
  32. subscribeInfoDo.getChannelId()+" "+
  33. subscribeInfoDo.getChannelName()+" "+
  34. subscribeInfoDo.getOnsRegionId()+" "+
  35. subscribeInfoDo.getRegionName()+" "+
  36. subscribeInfoDo.getOwner()+" "+
  37. subscribeInfoDo.getConsumerId()+" "+
  38. subscribeInfoDo.getTopic()+" "+
  39. subscribeInfoDo.getStatus()+" "+
  40. subscribeInfoDo.getStatusName()+" "+
  41. subscribeInfoDo.getCreateTime()+" "+
  42. subscribeInfoDo.getUpdateTime());
  43. }
  44. } catch (ServerException e) {
  45. e.printStackTrace();
  46. } catch (ClientException e) {
  47. e.printStackTrace();
  48. }
  49. }
本文导读目录