125 lines
3.3 KiB
Markdown
125 lines
3.3 KiB
Markdown
检索服务接口列表
|
||
====
|
||
## 关键词搜索
|
||
----
|
||
### 接口描述
|
||
>对用户输入的关键词进行相关结果的搜索匹配,搜索结果默认按照关键词与文档的相关性得分进行排序。
|
||
|
||
### URL
|
||
```html
|
||
http://127.0.0.1/search
|
||
```
|
||
### Http Method
|
||
POST
|
||
### Http返回格式
|
||
JSON
|
||
### Http请求参数说明
|
||
| 参数 | 类型 | 是否必需 | 描述 |
|
||
| ------------ | ------------ | ------------ | ------------ |
|
||
| appid | int | 是 | appname对应的ID |
|
||
| query | string | 是 | 搜索查询词 |
|
||
| page_index | int | 否 | 页码 |
|
||
| page_size | int | 否 | 每页条数 |
|
||
| sort_type | int | 否 | 排序方式 |
|
||
| sort_field | string | 否 | 排序字段 |
|
||
| fields | string | 否 | 返回指定字段值 |
|
||
|
||
说明:query兼容elasticsearch协议,格式可参考tools/search.json文件。
|
||
|
||
应用的定义及支持的字段类型可参考:[项目配置文件](https://gitee.com/jd-platform-opensource/isearch#%E9%A1%B9%E7%9B%AE%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6)
|
||
|
||
### Http返回结果说明
|
||
| 字段 | 类型 | 描述 |
|
||
| ------------ | ------------ | ------------ |
|
||
| code | int | 执行结果 |
|
||
| count | int | 结果总数 |
|
||
| result | string | 结果内容 |
|
||
### CURL调用示例
|
||
```
|
||
curl -X POST \
|
||
http://127.0.0.1/search \
|
||
-H 'content-type: application/json' \
|
||
-d '{"appid":10064,"query":{"match":{"author_id":"21386"}},"page_index":1,"page_size":3}'
|
||
```
|
||
### 成功返回示例
|
||
```json
|
||
{
|
||
"code": 0,
|
||
"count": 2,
|
||
"result": [{
|
||
"doc_id": "115",
|
||
"score": 20.395478565398534,
|
||
},
|
||
{
|
||
"doc_id": "105",
|
||
"score": 20.016650933441753,
|
||
}
|
||
]
|
||
}
|
||
```
|
||
### 错误返回示例
|
||
```json
|
||
{
|
||
"code": -1,
|
||
"message": "keyword is required"
|
||
}
|
||
```
|
||
|
||
## 索引上报
|
||
----
|
||
### 接口描述
|
||
>该接口上传记录至索引服务,生成普通索引。
|
||
|
||
### URL
|
||
```html
|
||
http://127.0.0.1/insert
|
||
```
|
||
### Http Method
|
||
POST
|
||
### Http返回格式
|
||
JSON
|
||
### Http请求参数说明
|
||
| 参数 | 类型 | 是否必需 | 描述 |
|
||
| ------------ | ------------ | ------------ | ------------ |
|
||
| appid | string | 是 | 用户组id |
|
||
| table_content | object | 是 | 内容对象 |
|
||
#### table_content的参数
|
||
| 参数 | 类型 | 是否必需 | 描述 |
|
||
| ------------ | ------------ | ------------ | ------------ |
|
||
| cmd | string | 是 | 操作类型 |
|
||
| fields | object | 是 | 文章对象 |
|
||
|
||
注:cmd取值包括add,delete,update。
|
||
|
||
#### fields的参数
|
||
| 参数 | 类型 | 是否必需 | 描述 |
|
||
| ------------ | ------------ | ------------ | ------------ |
|
||
| doc_id | string | 是 | 文章ID |
|
||
| style | int | 是 | 样式id |
|
||
| title | string | 是 | 标题 |
|
||
| author_id | string | 是 | 作者id |
|
||
| createtime | int | 是 | 时间 |
|
||
|
||
注:这里fields的参数与appid定义的字段相对应,这里仅是一个示例。
|
||
|
||
### Http 返回结果说明
|
||
| 参数 | 类型 | 描述 |
|
||
| ------------ | ------------ | ------------ |
|
||
| code | int | 执行结果 |
|
||
| message | string | 信息描述 |
|
||
|
||
### CURL调用示例
|
||
```html
|
||
curl -X POST \
|
||
http://127.0.0.1/insert \
|
||
-H 'content-type: application/json' \
|
||
-H 'doc_id: 115' \
|
||
-d '{"appid":10064,"table_content":{"cmd":"add","fields":{"author_id":"21386","createtime":1488981884,"doc_id":"115","status":3,"style":0,"sub_position":1,"title":"内存不够用?关闭这4个功能就行了"}}}'
|
||
```
|
||
### 成功返回示例
|
||
```json
|
||
{
|
||
"code": 0
|
||
}
|
||
```
|