# 数据总线集成
# 概述
介绍业务如何将消息内容发送到数据采集总线,提供数据给下游业务
# 本内容你将获得
- 接口说明
- 录入业务线
- 录入消息主题
- 调用接口发送数据
# 集成使用
# 接口说明
| 序号 | 功能 | 接口 | 请求方式 |
|---|---|---|---|
| 1 | 直接发送 | http://HOST_PATH/v2/api/data/bus/collect/directSendData?bizId=?&topicName=? | POST |
| 2 | 线程发送 | http://HOST_PATH/v2/api/data/bus/collect/threadSendData?bizId=?&topicName=? | POST |
配置说明:
- HOST_PATH: 数据采集服务地址或者网关地址
- 请求参数 bizId 业务线ID
- 请求参数 topicName: 消息主题名称
- 请求内容: 消息体
# 录入业务线
在数据采集总线前端,录入业务线
配置说明:
- 业务线,某一种业务类型。比如: 社保业务管理,社保缴存消息,社保异常消息等
- 一条业务线可以拥有多个消息主题
# 录入消息主题
在数据采集总线前端,录入消息主题
配置说明:
- 消息主题限制只能录入字母、数字、下划线
# 调用接口发送数据
# java调用
@Test
void testThreadSendData() {
//接口地址
String url = "http://HOST_PATH/v2/api/data/bus/collect/threadSendData?bizId=bizId&topicName=ticket_info_list";
//设置传输内容,此处用json格式组装数据
JSONObject json = new JSONObject();
json.put("始发站","郑州东站");
json.put("终点站","安阳东");
json.put("座位号","15车10D 二等座");
json.put("发车时间","2019年06月14号10:55分开");
String result = HttpRequest.post(url) //使用HttpClient发送消息
.header("Content-Type", "text/html,") //头信息,可使用文本格式发送
.body(String.valueOf(json))
.execute().body();
log.info("请求结果:{}",result);
}
# shell脚本调用
1、将数据内容写入文件中
[root@hadoopmaster xixixi]# more body.txt
{
"始发站": "郑州东站",
"终点站": "安阳东",
"座位号": "15车10D 二等座",
"发车时间": "2019年06月14号10:55分开"
}
2、调用脚本发送消息
[root@hadoopmaster xixixi]# curl -XPOST -T body.txt http://HOST_PATH/v2/api/data/bus/collect/directSendData?bizName=旅客运输业务&topicName=ticket_info_list
[root@hadoopmaster xixixi]# curl -XPOST -T body.txt http://HOST_PATH/v2/api/data/bus/collect/threadSendData?bizName=旅客运输业务&topicName=ticket_info_list
# 其它
- 无