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

创建发布信息

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

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

描述

OnsPublishCreate 接口用于向 MQ 申请注册发布关系,并得到生成的 PID,用于生产环境发消息。

使用场景

新申请 MQ 资源,在创建 Topic 之后,需要注册对应的发布关系 (PID) 来发消息,调用 OnsPublishCreate 接口即可实现。

注意:每个 Topic 只需要一个 PID 即可,不需要创建多个 PID,因为PID可以在多个应用中复用。

请求参数

名称 类型 是否必须 描述
OnsRegionId String 当前查询 MQ 所在区域,可以通过 OnsRegionList 方法获取,请参考公共术语说明
OnsPlatform String 该请求来源,默认是从 POP 平台
PreventCache Long 用于 CSRF 校验,设置为系统当前时间即可
ProducerId String 需要创建的发布关系的 PID
Topic String 发布的 Topic 名称

返回参数

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

相关 API

  • OnsPublishDelete:删除发布关系
  • OnsPublishList:获取发布关系列表
  • OnsPublishGet:查询发布关系

使用示例

本示例从华东1接入点接入,创建一个名为 PID_Mingduan 的发布关系到公测 Region,该发布关系表明用于发送 Topic 为 MingduanTestAPI 的消息。

  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. OnsPublishCreateRequest request = new OnsPublishCreateRequest();
  19. /**
  20. *ONSRegionId是指你需要API访问MQ哪个区域的资源
  21. *该值必须要根据OnsRegionList方法获取的列表来选择和配置,因为OnsRegionId是变动的,不能够写固定值
  22. */
  23. request.setOnsRegionId("publictest");
  24. request.setPreventCache(System.currentTimeMillis());
  25. request.setAcceptFormat(FormatType.JSON);
  26. request.setTopic("MingduanTestAPI");
  27. request.setProducerId("PID_Mingduan");
  28. try {
  29. OnsPublishCreateResponse 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. }

返回结果

CC815D34-0950-43BF-A4E8-4187C3C7BF19

本文导读目录