# xk-hy-forward-go 概览
xk-hy-forward-go 是 XK 系统的互联网医院监管数据转发服务,基于 Go 构建,负责将内部网络的监管数据透明转发至浙江省政务云。
## 基本信息
| 项 | 值 |
|----|-----|
| 语言 | Go 1.22 |
| 模块 | `xk-hy-forward-go` |
| 依赖 | github.com/joho/godotenv (环境变量加载) |
| 部署 | 内网服务器 Windows |
## 架构角色
```mermaid
graph LR
subgraph 外部网络
TRANSIT[xk-hy-transit-go
外部网络]
end
subgraph 内部网络
API[xk-api
监管数据打包]
FORWARD[xk-hy-forward-go
透明转发]
end
subgraph 政务云
GOV[浙江省政务云
59.202.52.129]
end
API -->|加密数据| TRANSIT
TRANSIT -->|转发| FORWARD
FORWARD -->|透传| GOV
GOV -->|结果| FORWARD
FORWARD -->|回调| API
```
::: warning 双通道设计
- 外部网络 `xk-hy-transit-go` 只能访问本服务
- 本服务负责转发至浙江省政务云
- 内外网隔离,确保安全
:::
## 端点
| 监听路径 | 转发目标 | 说明 |
|----------|----------|------|
| `POST /province/supervise/data` | `SUPERVISE_TARGET_URL` (端口 28212) | 加密监管业务 JSON |
| `POST /mng/file/auth/upload` | `FILE_TARGET_URL` (端口 28211) | 处方 PDF 多部分上传 |
| `GET /health` | 本地 | 健康检查 |
| `GET /t` | 本地 | 政务云测试页面 |
## 配置 (.env)
| 变量 | 默认值 | 说明 |
|------|--------|------|
| `LISTEN_ADDR` | `:16001` | 监听地址 |
| `SUPERVISE_TARGET_URL` | — | 监管数据转发目标 |
| `FILE_TARGET_URL` | — | 文件上传转发目标 |
| `ALLOW_IPS` | — | 允许的 IP 白名单 |
| `FORWARD_SHARED_SECRET` | — | 转发共享密钥 |
| `ENABLE_FORWARD` | `true` | 启用转发(false 为 echo 模式) |
| `LOG_DIR` | — | 日志目录 |
## 启动方式
```bash
# Windows
run.bat
# 或直接运行
go run main.go
```