# 羚牛 Vehicle Map
全国氢能车辆与加氢站运营驾驶舱。浏览器只访问本服务的 `/api/dashboard`,服务端使用开放平台 AppKey 获取其授权车辆、当日里程和资产库只读加氢站点位,AppKey 不会下发到浏览器。
## 当前部署
- ECS 服务:`lingniu-vehicle-map.service`
- 访问地址:
- 健康检查:
原始仓库只有静态页面和静态文件服务,没有车辆数据接口;当前版本已改为通过服务端代理对接车辆数据开放平台,页面展示的数据不再使用硬编码车辆和加氢站样例。
## 本地运行
```bash
export OPEN_PLATFORM_APP_KEY='<32位AppKey>'
python3 server.py
```
默认地址:`http://127.0.0.1:20800`。
请通过上述 HTTP 地址访问,不能直接双击打开 `index.html`:页面需要同源调用本服务的数据 API。
## 数据访问
- `GET /api/dashboard` 公开返回车辆信息、站点基础信息及加氢量。
- 不保存访问码、不创建浏览器会话,也不区分公开或受保护的数据接口。
## 接口依赖
- `POST /api/v1/vehicles/realtime/query`:全部授权车辆实时位置与状态;
- `POST /api/v1/vehicles/mileage/query`:全部授权车辆当日里程;
- `POST /api/v1/hydrogen-stations/query`:资产库只读加氢站地图点位。
以上三个接口均使用开放平台的 `Authorization: Bearer ` 鉴权。生产 AppKey 仅保存在 ECS 的 `/opt/lingniu-vehicle-map/env/vehicle-map.env`,文件权限为 `root:vehicle-map 0640`。
本服务提供:
- `GET /api/health`:进程及配置状态;
- `GET /api/dashboard`:面向前端的公开聚合数据,默认缓存5秒;加氢站缓存1小时。
全国视图按车辆最新 GPS 坐标落入省级行政区,不按车牌归属地推断;没有有效实时坐标的车辆会单独计入“无实时位置”,不会伪造省份归属。页面每15秒刷新一次。
车辆地图按缩放级别逐级下钻:全国视角(小于7级)按省聚合,7–9.5级按市聚合,9.5–12级按区县聚合,12级及以上显示当前视野内的单车真实位置。点击省、市、区县气泡会自动进入下一级。