Appearance
应用配置
AppManagementController 负责管理移动端所需的配置数据,存储于 app_config 表。data 字段使用 JSON 保存,不同 type 对应不同的配置结构。
获取配置
- Method:
GET - Path:
/appConfig/getAppConfigByType - Query:
| 参数 | 必填 | 说明 |
|---|---|---|
type | ✗ | 配置类型。缺省返回所有记录。 |
合法的 type 枚举(见 UpdateAppConfigDto):
Index:首页配置,例如bannerLevel、bannerNum、cateNum、hotLevel、hotNum。Cate:筛选配置,常见键为filter_<typeId>、pageNum。Ads:广告位配置,约定结构需与客户端协商。AppConfig:全局配置,如redisStatus、redisKey、redisTime、officialUrl、playerConfigUrl、danmuApiUrl。Search:搜索页推荐,如searchLevel、searchNum。
响应示例
json
{
"code": 0,
"data": {
"id": 3,
"type": "AppConfig",
"data": {
"redisStatus": true,
"redisKey": "movieapp",
"redisTime": 1800,
"officialUrl": "https://parse.example/api",
"officialUrlField": "url",
"playerConfigUrl": "https://cdn.example/player-config.json",
"danmuApiUrl": "https://danmu.example/api",
"hotTitle": "热播推荐"
}
},
"message": "OK"
}保存配置
- Method:
POST - Path:
/appConfig/updateAppConfigByType
请求体
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
type | string | ✓ | 配置类型,枚举同上。 |
data | object | ✓ | 具体配置。 |
规则:
- 若指定
type已存在,则执行UPDATE;否则新增一条记录。 - 写入成功返回
"保存成功",失败抛出BadRequestException。
编辑
Cate配置时,请确保filter_<typeId>与移动端分类 ID 对齐,否则筛选条件无法落入对应分类。
与 App 页面的关系
| type | 影响范围 | 关键字段 |
|---|---|---|
Index | 首页 Banner、热播、分类模块 | bannerLevel、bannerLevel_<typeId>、bannerNum、cateNum、hotLevel、hotNum |
Cate | 筛选页分类树与过滤条件、默认分页 | filter_<typeId>、pageNum |
Search | 搜索页推荐模块 | searchLevel、searchNum |
AppConfig | Redis 缓存、播放源配置、弹幕、官解 | redisStatus、redisKey、redisTime、playerConfigUrl、officialUrl、officialUrlField、danmuApiUrl |
Ads(如有) | 自定义运营位 | 自定义字段 |
建议运营/研发每次修改配置后对照《页面 × 接口 × 配置映射》进行验证,必要时清理 Redis 缓存以确保客户端读取到最新数据。
playerConfigUrl 约定
- 指向的 JSON 结构需包含各播放源的元信息,例如:json
{ "youku": { "show": "优酷超清", "sort": 100, "status": "1", "type": "OFFICIAL" }, "m3u8": { "show": "高速线路", "sort": 90, "status": "1" } } - 当
type设置为OFFICIAL时,移动端播放该源前需要调用/api/mobile/v1/vod/OfficialPlayUrl获取解析后的真实地址。 status为"1"表示开启,其他值会在接口阶段被过滤。
对接建议
- 对于需频繁调整的配置,可在后台提供 JSON 编辑器,保存前调用
JSON.parse预校验。 - 配置变更后请通知移动端是否需要刷新缓存:
- 首页或播放相关配置:建议调用 Redis 清理脚本。
- 搜索配置:刷新
search页面即可生效。