正常订阅流程
1、正常情况下。
- 登录 京东-商家开放控制台
- 选择应用 -> 消息服务 -> 订阅消息 -> 输入主题名称 -> 点击查询 -> 选择订阅即可
- 输入信息(云账号,key ID,key Secret,选择区域),确认授权订阅即可。
1
2云账号:参考 <https://uc.jdcloud.com/account/basic-info> 【账户名】
key ID/key Secret:参考 <https://uc.jdcloud.com/account/accesskey> 【没有的话,就创建】
其中的坑
2、但是其中有坑。
跨区域问题
- 若你的云主机是
上海
的,就不能订阅区域为北京
的 topic 主题,只能订阅上海
的 topic 主题(我就是这个问题)1
2
3
4
5
6
7怎么查看你的主机所在区域:参考 <https://yd-console.jdcloud.com/#/vm/host/list>
【基础云服务 -> 云主机 -> 实例】
这里可以选择四个,看看你的主机在哪个里面,就是你主机所在的区域:
1、华北-北京
2、华南-广州
3、华东-宿迁
4、华东-上海
postman请求订阅
- 根据上面可以了解到,你是上海的,订阅的时候只能选择北京,那样是不可以的。因为我咨询客服了,他说跨区域是不能通信的。只能通过 curl 发送请求来订阅,这里我使用的是 postman
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16POST
https://open-console.jd.com/messageSubscribe/addUserAKAndSub
+ Headers
cookie xxx
+ Body -> raw -> JSON(各个参数,下面会讲解)
{
"appkey":"...C68",
"topicId":"165",
"accessKeyId":"...EE8",
"accessKeySecret":"...349",
"jdCloudPin":"...",
"clusterRegion":"cn-east-2",
"queueServiceType":"JCQ"
}
参数获取
Headers:cookie
1、登录 商家开放控制台
2、右键检查
3、选择 Network(网络)
4、此时,刷新一下当前页面
5、Name 选中,查看右边 “Headers -> Request Headers -> cookie”,把对应的值,全部选中复制
json body
- json body:appkey
登录 京东开放平台,选择“概览”,即可查看“AppKey” - json body:topicId
这里说了,是id,
例如:POP订单备注变更 https://open.jd.com/home/home#/doc/msgApi?apiCateId=81&apiId=165
其中,url 中 apiId 就是要填写的"topicId":"165"
- json body:accessKeyId/accessKeySecret
前面已经说了,地址 Access Key管理,没有就创建一个即可 - json body:jdCloudPin
对应,基本资料 中的账户名 - json body:clusterRegion
因为我是上海的云主机,所以我要订阅上海的 JCQ topic 主题。这里填写"clusterRegion":"cn-east-2"
。
若你要订阅其他地区,可以咨询客服:支持中心,选择“立即提问”,问题类型选择“JDO-消息服务、数据推送 -> 消息服务、数据推送接入问题”。
例如:假设你是北京的主机,就说:“你好,我是北京的云主机,想订阅 topic xxx,订阅时,没有区域为北京的选项,clusterRegion 区域应该填写什么?”。
正常上班的情况下,那边过会就会回复。 - json body:queueServiceType
固定写法,"queueServiceType":"JCQ"
查看是否订阅成功
发送成功,登录 商家开发控制台,选择应用,“消息服务 -> 我的订阅”,若显示订阅失败,请与客服联系。联系客服的方式,上面“json body:clusterRegion”已经提到。就说:“显示订阅失败,你看一下。”,然后给出订阅失败的截图,给出 请求体。
JDK 使用
JDK 使用(待整理)
2021-07-07 10:14:49 补
1、导入 pom 依赖
1 | <!-- 京东云鼎消息队列 start --> |
2、代码
1 | package com.decathlon.sfc.order.bff.core.thread; |
3、京东云鼎查看 topic
https://yd-jcq-console.jdcloud.com/topics
4、查看订阅信息
登录 商家开发控制台,选择应用,“消息服务 -> 我的订阅”,若显示订阅失败,请与客服联系。联系客服的方式,上面“json body:clusterRegion”已经提到。就说:“显示订阅失败,你看一下。”,然后给出订阅失败的截图,给出 请求体。