# 数据源
统一搜索服务的数据源支持下列几种来源
其内部支持以下数据源
- ElasticSearch 数据源
- Apache Solr 数据源
同时,还可以接入第三方的REST接口,对接口返回的数据提供搜索服务
##外部REST接口接入说明
# 接口规范
外部提供的REST接口,必须遵循以下规范
接口需支持品高IAM (opens new window)应用身份认证
详情请参考应用身份认证说明
接口请求类型
Content-Type: application/json;charset=UTF-8
- GET请求参数
| 参数名 | 数据类型 | 必填 | 参数位置 | 参数说明 |
|---|---|---|---|---|
| keyword | string | Y | query | 关键字 |
| limit | integer | N | query | 分页大小(默认10条) |
| cursor | string | N | query | 分页游标条件(接入方可自定义,页码、偏移条件),作为下一页的查询条件 |
# GET请求示例
GET /test/search?cursor={cursor}&limit={limit}&keyword={keyword}
- POST请求参数
| 参数名 | 数据类型 | 必填 | 参数位置 | 参数说明 |
|---|---|---|---|---|
| keyword | string | Y | body | 关键字 |
| limit | integer | N | body | 分页大小(默认10条) |
| cursor | string | N | body | 分页游标条件(接入方可自定义,页码、偏移条件),作为下一页的查询条件 |
# POST请求示例
{
"keyword" : "string", //关键字
"limit" : "integer", //分页大小(默认10条)
"cursor" : "string", //分页游标条件(接入方可自定义,页码、偏移条件),作为下一页的查询条件
}
- 返回结果
| 状态码 | 说明 | 返回值 | 响应头 |
|---|---|---|---|
| 200 | 成功响应 | ApiResultPage«UdsContents» | 无 |
| 201 | Created | 无 | 无 |
| 401 | Unauthorized | 无 | 无 |
| 403 | Forbidden | 无 | 无 |
| 404 | Not Found | 无 | 无 |
- 接口返回示例
{
"data" : [ { //请求返回的数据
"id" : "string", //内容id
"title" : "string", //内容标题(如待办名称)
"subTitle" : "string", //内容副标题(可选参数-如待办正文信息)
"brief" : "string", //内容简要(可选参数)
"image" : "string", //内容图标(可选参数)
"author" : "string", //内容作者(可选参数)
"displayTime" : "integer", //展示时间(时间戳--用于页面时间展示:毫秒)
"action" : "string", //点击处理动作信息,以json格式保存,支持不同端的处理,如:{\"android\":\"[OpenApp]\\nappCode=xxx\\nappUrl=xxx\",\"ios\":\"[OpenApp]\\nappCode=xxx\\nappUrl=xxx\",\"pc\":\"[OpenUrl]\\nurl=xxx\",\"web\":\"[OpenUrl]\\nurl=xxx\"}
"attachInfo" : "string", //附加信息(可选参数--如动态前两张图片地址)
"attachDescription" : "string" //附加信息描述(可选参数--如附件信息为图片时,可以补充说明图片数量)
} ],
"total" : "integer", //数据总数
"code" : "integer", //结果码 200:成功
"count" : "integer", //请求返回的数据总数
"message" : "string", //当状态码不是200时,错误信息
"cursor": "string" //分页游标条件(接入方可自定义,页码、偏移条件),作为下一页的查询条件
}
# 接口示例
- 接口请求地址
http://127.0.0.1:9999/test/articles
- 接口返回数据格式
{
"code": 200,
"message": null,
"data": [
{
"id": "f110f5ec-93eb-11e9-bd7d-5286863896bf",
"title": "国庆出游报告出炉国风音乐会开创文旅演艺融合模式",
"subTitle": "大数据报告显示红色旅游、夜游、登高赏秋游是今年国庆出游的热门主题。",
"brief": "来源:新闻",
"image": "store://bdc6b$403cb8449d8bc0dcdfeb97a7cfb",
"author": "张三",
"displayTime": 1560234646000,
"action": "{\"web\":\"http://www.cntour2.com/viewnews/2019/10/08/kutAgr3Wv0oHoDw3WN270.shtml\",\"mobile_web\":\"http://www.cntour2.com/viewnews/2019/10/08/kutAgr3Wv0oHoDw3WN270.shtml\",\"light_app\":\"\",\"ios\":\"\",\"android\":\"\"}"
},
{
"id": "f110f682-93eb-11e9-bd7d-5286863896bf",
"title": "法定假日加班费如何算?国庆7天加班费抵平时17天日薪",
"subTitle": "本报讯(记者代丽丽)国庆假期,有些劳动者在假日期间坚守岗位,劳动法规对加班者的权益有着充分的保障。如果国庆假期7天全部加光是加班费就可以抵得上17天的工资了。",
"image": "store://0b0f643ef8b1$4a2b9bf9a9abf6036642",
"displayTime": 1560234646000,
"action": "{\"web\":\"https://3w.huanqiu.com/a/276886/9CaKrnKn9Oz?agt=8\",\"mobile_web\":\"https://3w.huanqiu.com/a/276886/9CaKrnKn9Oz?agt=8\",\"mobile_web\":\"http://www.baidu.com\",\"light_app\":\"\",\"ios\":\"\",\"android\":\"\"}"
},
{
"id": "f110f46d-93eb-11e9-bd7d-5286863896bf",
"title": "雨势减弱天炎热广东西部地区今日阴有阵雨",
"subTitle": "中国天气网讯今天(8日),广东西部的降雨较昨日有所减弱,主要维持多云间阴天有阵雨的天气,其余市县多云为主,局地有阵雨。此外,粤北大部、珠三角大部和粤东地区的最高气温在33℃~35℃左右,依然比较炎热。",
"brief": "来源:天气",
"image": "store://d71fd57b008842e1bce6$cea1a1a74b62",
"author": "马六",
"displayTime": 1560222526000,
"action": "{\"web\":\"http://baijiahao.baidu.com/s?id=1646787436942340069\",\"mobile_web\":\"http://baijiahao.baidu.com/s?id=1646787436942340069\",\"light_app\":\"\",\"ios\":\"\",\"android\":\"\"}",
"attachInfo" : "store://d190ska0-d0ai9.jpg (图片地址)",
"attachDescription": "图片:共3张"
}
],
"count": 3,
"total": 3,
"cursor": "1560222526000"
}
# 接口接入方式
外部REST接口需提供以下信息
- 接口地址URL
- 接口请求方式(GET/POST)
- 接口所需认证类型(AuthType)
- OAUTH2_CLIENT ("单点登录应用身份") 若是以指定应用身份调用,需提供客户端账号和秘钥(相关账号秘钥可向系统管理员申请)
# 补充说明
如对上述接口说明及接入有疑问,可咨询LINK相关开发人员