521
windows
查詢指定 Topic 狀態__Topic 相關接口_Open API_消息隊列 MQ-阿裏雲
查詢 Topic
本文介紹 OnsTopicGet 接口,用於查詢指定 Topic 的信息,屬於精確查詢。
1. 使用場景
查詢賬號下指定 Topic 的分布情況,並獲取 Topic 當前的開通狀態和權限關係等信息。由於是精確查詢,因此輸入參數必須包含 Topic 名稱。
2. 請求參數列表
名稱 | 類型 | 是否必須 | 描述 |
---|---|---|---|
OnsRegionId | String | 是 | 當前查詢 MQ 所在區域,可以通過 ONSRegionList 方法獲取,參見公共術語 |
OnsPlatform | String | 否 | 該請求來源,默認是從 POP 平台 |
PreventCache | Long | 是 | 用於 CSRF 校驗,設置為係統當前時間即可 |
Topic | String | 是 | 指定查詢的 Topic |
3. 返回參數列表
名稱 | 類型 | 描述 |
---|---|---|
RequestId | String | 為公共參數,每個請求獨一無二 |
HelpUrl | String | 幫助鏈接 |
Data | List(PublishInfoDo) | 返回所有已發布的 Topic 信息列表 |
PublishInfoDo 數據結構
成員 | 類型 | 描述 |
---|---|---|
id | Long | 該 Topic 信息編號 |
channelId | Integer | 該 Topic 所在區域 ID,0代表阿裏雲,1代表聚石塔 |
channelName | String | 該 Topic 所在類別,阿裏雲,或者聚石塔,… |
onsRegionId | Long | 該 Topic 所在區域 ID,就是 ONSRegionList 方法獲取的內容 |
regionName | String | 該 Topic 所在區域名稱 |
topic | String | Topic 名稱 |
owner | String | Topic 所有者編號,為阿裏雲的 uid |
relation | Integer | 所有關係編號1為持有者,2為可以發布,4為可以訂閱,6為可以發布和訂閱 |
relationName | String | 所有關係名稱,例如持有者、可訂閱、可發布、可發布訂閱 |
status | Integer | 當前狀態編號(0 服務中 1 凍結 2 暫停) |
statusName | String | 當前狀態別名,服務中,未開通 |
appkey | Integer | null |
createTime | Long | 創建時間 |
updateTime | Long | 更新時間 |
remark | String | 備注信息 |
4. 相關 API
- OnsTopicCreate:創建 Topic
- OnsTopicList:查看 Topic 列表
- OnsPublishDelete:刪除發布關係
- OnsSubscribeDelete:刪除訂閱關係
5. 使用示例
調用示例:
本示例僅僅提供一個參考,從華東1接入點接入,查詢名為”MingduanTest”的 Topic,並打印 Topic 的相關信息。
public static void main(String[] args) {
String regionId = "cn-hangzhou";
String accessKey = "XXXXXXXXXXXXXXXXX";
String secretKey = "XXXXXXXXXXXXXXXXX";
String endPointName ="cn-hangzhou";
String productName ="Ons";
String domain ="ons.cn-hangzhou.aliyuncs.com";
/**
*根據自己需要訪問的區域選擇Region,並設置對應的接入點
*/
try {
DefaultProfile.addEndpoint(endPointName,regionId,productName,domain);
} catch (ClientException e) {
e.printStackTrace();
}
IClientProfile profile= DefaultProfile.getProfile(regionId,accessKey,secretKey);
IAcsClient IAcsClient= new DefaultAcsClient(profile);
OnsTopicGetRequest request = new OnsTopicGetRequest();
request.setAcceptFormat(FormatType.JSON);
request.setTopic("MingduanTest");
/**
*ONSRegionId是指需要API訪問MQ哪個區域的資源.
*該值必須要根據OnsRegionList方法獲取的列表來選擇和配置,因為OnsRegionId是變動的,不能夠寫固定值
*/
request.setOnsRegionId("daily");
request.setPreventCache(System.currentTimeMillis());
try {
OnsTopicGetResponse response = IAcsClient.getAcsResponse(request);
List<OnsTopicGetResponse.PublishInfoDo> publishInfoDoList=response.getData();
for (OnsTopicGetResponse.PublishInfoDo publishInfoDo:publishInfoDoList){
System.out.println(publishInfoDo.getId()+" "+
publishInfoDo.getChannelId()+" "+
publishInfoDo.getChannelName()+" "+
publishInfoDo.getOnsRegionId()+" "+
publishInfoDo.getRegionName()+" "+
publishInfoDo.getTopic()+" "+
publishInfoDo.getOwner()+" "+
publishInfoDo.getRelation()+" "+
publishInfoDo.getRelationName()+" "+
publishInfoDo.getStatus()+" "+
publishInfoDo.getStatusName()+" "+
publishInfoDo.getAppkey()+" "+
publishInfoDo.getCreateTime()+" "+
publishInfoDo.getUpdateTime()+" "+
publishInfoDo.getRemark());
}
System.out.println(response.getRequestId());
}
catch (ServerException e) {
e.printStackTrace();
}
catch (ClientException e) {
e.printStackTrace();
}
catch (Exception e) {
e.printStackTrace();
}
}
最後更新:2016-12-19 14:53:12
上一篇:
獲取 Topic 列表__Topic 相關接口_Open API_消息隊列 MQ-阿裏雲
下一篇:
搜索指定 Topic 詳細信息__Topic 相關接口_Open API_消息隊列 MQ-阿裏雲
極高性價比 阿裏雲重磅推出PolarDB雲數據庫
雲服務器 ECS 雲服務器宕機排查
導入PostgreSQL數據__快速入門_雲數據庫 HybridDB-阿裏雲
前言 極速自由的大數據OLAP體驗__使用手冊_分析型數據庫-阿裏雲
概覽頁介紹__用戶指南_企業級分布式應用服務 EDAS-阿裏雲
數量限製__使用須知_用戶指南_彈性伸縮-阿裏雲
運行SQL__快速開始_大數據計算服務-阿裏雲
掛載文件係統__快速入門_文件存儲-阿裏雲
VirtualBorderRouterType__數據類型_API 參考_雲服務器 ECS-阿裏雲
配置ECS安全組隻放行高防回源IP段__運維問題_產品常見問題_DDoS 高防IP-阿裏雲
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲