2.8 KiB
2.8 KiB
新闻资讯公开查询 API
约定
- 后端接口基础地址:
/api;生产环境经 Nginx 对外暴露为/api/shihezi,例如列表实际地址为/api/shihezi/app/newsInfo/list。 - 以下接口均无需登录。
- 接口只返回已上架且未删除的新闻资讯,
status=0表示上架。 module保存业务字典news_module的dict_value,返回的moduleName为对应的dict_label。content为富文本 HTML;列表接口不返回正文,详情接口返回完整正文。- 列表接口返回分页结构:
{ code, msg, total, rows };详情接口返回标准 RuoYi 结构。
1. 查询已上架新闻资讯列表
GET /api/app/newsInfo/list
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
pageNum |
integer | 否 | 页码,默认 1 |
pageSize |
integer | 否 | 每页条数,默认 10 |
keyword |
string | 否 | 全文关键字,使用 LIKE '%keyword%' 同时匹配标题和正文 |
module |
string | 否 | news_module 业务字典值 |
服务端会强制使用 status=0,调用方不能通过参数查询下架资讯。
请求示例
查询标题或正文中包含“面试”的已上架资讯:
GET /api/app/newsInfo/list?pageNum=1&pageSize=10&keyword=%E9%9D%A2%E8%AF%95
查询指定模块中标题或正文包含“简历”的已上架资讯:
GET /api/app/newsInfo/list?pageNum=1&pageSize=10&keyword=%E7%AE%80%E5%8E%86&module=resume_guide
响应示例
{
"code": 200,
"msg": "查询成功",
"total": 1,
"rows": [
{
"id": 1,
"module": "interview_tips",
"moduleName": "面试技巧",
"title": "结构化面试准备指南",
"status": "0",
"createTime": "2026-07-20 15:00:00",
"updateTime": null
}
]
}
keyword 查询使用数据库 LIKE,匹配范围为:
news.title LIKE '%' || :keyword || '%'
OR news.content LIKE '%' || :keyword || '%'
正文是富文本 HTML,关键字会在正文 HTML 字符串中进行匹配。
2. 查询已上架新闻资讯详情
GET /api/app/newsInfo/{id}
路径参数:
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
id |
long | 是 | 新闻资讯 ID |
只有同时满足“未删除、已上架”的记录才会返回;下架或不存在时,data 为 null。
请求示例
GET /api/app/newsInfo/1
响应示例
{
"code": 200,
"msg": "操作成功",
"data": {
"id": 1,
"module": "interview_tips",
"moduleName": "面试技巧",
"title": "结构化面试准备指南",
"content": "<h2>准备重点</h2><p><strong>先了解岗位要求。</strong></p>",
"status": "0",
"createTime": "2026-07-20 15:00:00",
"updateTime": null
}
}