Implement Redis CHIS session store
This commit is contained in:
@@ -10,7 +10,7 @@
|
||||
| Web 框架 | Flask 3.0.3 + application factory | 已定 | 用户指定 Flask 版本;factory 模式便于配置注入和测试 |
|
||||
| 数据校验 | 待定,建议 Pydantic v1 或 Marshmallow | 待定 | Python 3.8 下需注意版本兼容 |
|
||||
| HTTP 客户端 | `requests[socks]` 2.32.4 | 已定 | CHIS 会话 cookie 管理简单稳定;`CHIS_PROXY` 有值时走 SOCKS5 代理 |
|
||||
| Redis 客户端 | 待定,建议 `redis-py` | 待定 | 保存 CHIS 会话、幂等和短期状态 |
|
||||
| Redis 客户端 | `redis-py` 3.5.3 | 已定 | 保存 CHIS 会话、幂等和短期状态;兼容当前系统 Python 中既有 `django-q` 约束 |
|
||||
| SM2 加密 | `gmssl` 3.2.2 | 已定 | 兼容 `hans_chis.sm2.sm2_encrypt` 的 `CryptSM2(mode=0)` 行为 |
|
||||
| 日志 | Python logging + TimedRotatingFileHandler | 已定 | `logs/` 每天一个综合日志文件,保留 1 年 |
|
||||
| 请求归档 | 本地 JSON 文件 | 已定 | `archives/` 每个接口请求一个完整归档文件,部署在内网前置机,不脱敏 |
|
||||
@@ -24,7 +24,7 @@
|
||||
- Flask 3.0.3 + Python 3.8 已定,但 Python 3.8 生命周期已结束;如果部署环境允许,未来建议评估 Python 3.10+。
|
||||
- 本项目使用当前系统 Python 3.8 环境,不创建虚拟环境;依赖仍必须写入 `requirements.txt` 并固定关键版本。
|
||||
- Flask 应用必须使用 application factory 模式,即 `app/__init__.py` 暴露 `create_app(config_object=None)`;不要在模块导入时创建并配置全局业务 app。
|
||||
- Redis 是会话缓存核心,不建议把 CHIS 会话保存在进程内存。
|
||||
- Redis 是会话缓存核心,不建议把 CHIS 会话保存在进程内存;当前固定 `redis==3.5.3`,避免破坏系统 Python 环境里 `django-q` 的 `redis<4.0.0` 约束。
|
||||
- 运行日志保存到 `logs/`,每天一个综合日志文件,包含 INFO/WARNING/ERROR/EXCEPTION 等级摘要,保留 1 年。
|
||||
- 接口请求归档保存到 `archives/`,一个 API 请求一个 JSON archive 文件,文件内容保存完整 API 与 CHIS 请求 / 响应,不脱敏;该目录仅用于内网前置机本地审计排查,不提交 git。
|
||||
- CHIS public key 从配置文件或环境变量读取;当前不依赖 `/chis/logon/publicKey` 动态获取。
|
||||
|
||||
Reference in New Issue
Block a user