98 lines
2.1 KiB
Markdown
98 lines
2.1 KiB
Markdown
# 外部系统滚动通知接口使用说明
|
|
|
|
## 接口概述
|
|
|
|
提供安全的API访问,供其他系统获取滚动通知信息。
|
|
|
|
## 接口信息
|
|
|
|
- **接口地址**: `GET /notice/external/scroll`
|
|
- **请求方式**: GET
|
|
- **认证方式**: 请求头认证
|
|
|
|
## 请求参数
|
|
|
|
### 请求头
|
|
| 参数名 | 必填 | 说明 |
|
|
|--------|------|------|
|
|
| X-App-Id | 是 | 应用ID,在配置文件中配置 |
|
|
| X-App-Secret | 是 | 应用密钥,在配置文件中配置 |
|
|
|
|
### 查询参数
|
|
| 参数名 | 必填 | 默认值 | 说明 |
|
|
|--------|------|--------|------|
|
|
| limit | 否 | 20 | 返回条数,最大50条 |
|
|
|
|
## 响应格式
|
|
|
|
```json
|
|
{
|
|
"code": 0,
|
|
"msg": "操作成功",
|
|
"data": [
|
|
{
|
|
"title": "通知标题",
|
|
"createTime": "2025-01-27 10:00:00",
|
|
"description": "通知描述"
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
## 使用示例
|
|
|
|
### JavaScript 调用示例
|
|
```javascript
|
|
fetch('/notice/external/scroll?limit=15', {
|
|
method: 'GET',
|
|
headers: {
|
|
'X-App-Id': 'external_app_001',
|
|
'X-App-Secret': 'secret_2024_001'
|
|
}
|
|
})
|
|
.then(response => response.json())
|
|
.then(data => {
|
|
if (data.code === 0) {
|
|
// 处理通知数据
|
|
console.log(data.data);
|
|
}
|
|
})
|
|
.catch(error => {
|
|
console.error('获取通知失败:', error);
|
|
});
|
|
```
|
|
|
|
### cURL 调用示例
|
|
```bash
|
|
curl -X GET "http://your-domain/notice/external/scroll?limit=10" \
|
|
-H "X-App-Id: external_app_001" \
|
|
-H "X-App-Secret: secret_2024_001"
|
|
```
|
|
|
|
## 配置说明
|
|
|
|
在 `application.yml` 中添加以下配置:
|
|
|
|
```yaml
|
|
pjcloud:
|
|
external-app:
|
|
apps:
|
|
- appId: "your_app_id"
|
|
appSecret: "your_app_secret"
|
|
appName: "你的应用名称"
|
|
enabled: true
|
|
```
|
|
|
|
## 安全特性
|
|
|
|
1. **应用认证**: 通过 appId 和 appSecret 验证调用方身份
|
|
2. **访问控制**: 只返回已发布的公告
|
|
3. **数据限制**: 限制最大返回条数,防止恶意调用
|
|
4. **信息脱敏**: 只返回必要的滚动信息
|
|
|
|
## 注意事项
|
|
|
|
1. 请妥善保管应用密钥,不要泄露给第三方
|
|
2. 建议使用HTTPS协议进行传输
|
|
3. 可以根据需要调整返回条数限制
|
|
4. 支持动态启用/禁用应用访问权限 |