Appearance
1. 概述
适用版本:DASS2(文档基线:真机实测
2.5.9.20241216,设备型号IA-2230)
前提:DASS2 设备已上电,dasserver服务正在运行,网络可达其 HTTP 端口(默认8085);已持有可登录的管理员账号
依据:本指南逐条对照 DASS2 后端dasserver(Go + beego v1)源码整理,并对可达真机做只读实测校准。文中标注「实测」的请求 / 响应片段均为真机原样返回,未做美化。
1.1 本指南能做什么
本指南面向要基于 DASS2 做二次开发 / 集成的工程师,目标是让你用 HTTP 把下面这条核心链路一次跑通,并知道每个环节的约束与坑:
登录 → 查采集服务 → 读服务配置 → 建服务(可选)→ 导入测点 → 回查/导出测点
→ 启停服务 → 采实时数据 / 历史数据读完本指南可以获得:
- 一条最小可跑链路:分步 curl 示例,每步都有真实请求与真实响应片段,可直接复制执行。
- 完整接口参考:八组接口的方法、完整路径、请求字段(字段 / 位置 / 类型 / 必填 / 说明)、响应形态与边界情况。
- 数据字典:测点表列名与 API 字段的对应关系、点类型(RT)/ 采集点类型(SR)/ 控制属性(AE)/ 显示格式(FM)/ 同步属性(UM)/ 压缩类型(KZ)/ 死区类型(DT)/ 数据状态(DS)等枚举。
- 必读的坑:按严重程度排序的已知限制,每条写清「现象 / 原因 / 规避方式」。
【注意】本指南面向接口调用方。DASS2 前端界面的操作说明见《DASS2 使用手册》;本指南中出现的界面路径(如「数据服务 → 数据服务」)只用于帮助把接口动作与界面动作对应起来。
1.2 覆盖范围
| 维度 | 内容 |
|---|---|
| 协议与端口 | HTTP,端口 8085(conf/app.conf 的 httpport = 8085;实测真机仅该端口监听) |
| 路径前缀 | /v1 |
| 鉴权方式 | Session + 同名用户 Cookie 双重校验,详见 2.3 |
| 成功判定 | code == 0 且 msg == "ok"——不可只看 code,详见 2.2 |
| 覆盖分组 | 登录与鉴权、采集服务管理、驱动管理、采集测点、上传点、系统信息与资源、实时与历史数据、系统运维 |
| 不在范围 | 网络管理(网口 / 无线 / NAT / 防火墙 / 路由 / 串口)、系统诊断与协议调试、socket.io 与 WebSSH、系统升级、恢复出厂设置、数据分析任务(/v1/system/data/analysis/*) |
接口参考的编排约定:4.1 ~ 4.8 中,核心链路接口给出完整字段表、请求与响应示例;次要接口给出字段表与响应结构说明,不再重复罗列示例,以免掩盖关键信息。仅管理界面使用、二次开发价值低的接口合并为表格列出,但保证路径完整。
【警告】动手前请先看两处:
/v1/calcModel/gethistorybyid返回的是伪造的随机数据,不是真实历史值——它会让基于它的分析功能静默失效。真实历史数据请用/v1/opconsole/gethistorybyid(s)。详见 4.7.2 与 7.32。/v1/point/{id}的{id}是测点 UID,不是dasId;按服务查测点要用?SN={服务名}。详见 1.3、4.4 与 7.7。
【警告】本指南覆盖的是 DASS2 的设备端 HTTP 接口。如果你的目标是采集点在实时库中的存储与读取,或者云边协同下发,请另见对应文档;本指南的
/v1/point/*操作的是 DASS2 的关系库(SQLite)+ 实时库联动,两者不是一回事。
1.3 术语与对象关系
DASS2 里有几个名字相近、极易混淆的对象,先把关系钉死:
| 名词 | 含义 | 在接口里的样子 |
|---|---|---|
| 采集服务(DAS 服务) | 一条独立的采集通道进程,一个采集服务 = 一个驱动实例 + 一组配置 + 一组测点 | /v1/das 列表里的 id(如 36),name 形如 jen |
| 驱动(driver) | 采集协议实现包,决定采集服务能填哪些配置项、支持什么点类型 | /v1/driver 列表里的 id(如 97),name 形如 GB_Demo_Jenkins |
| 采集点(point) | 从设备侧采集上来的测点,归属某个采集服务 | /v1/point?SN={服务名}(按服务查);/v1/point/{uid}(按测点查) |
| 上传点(upoint) | 从本机向上一级(云平台 / 中心)上传的测点,是采集点向上映射的结果 | /v1/upoint/{dasId} |
| 实时库(openPlant / rtnn) | 设备本地的时序库,采集点/上传点最终落到这里 | 对 API 调用方透明,但很多接口依赖它在线 |
【警告】同一个
/v1/point/前缀下,路径参数{id}的含义随接口而变,这是本产品最容易踩的坑:
接口 {id}的真实含义POST /v1/point/import/{id}、export、empty、multimport、import/local采集服务 ID(dasId) GET /v1/point/{id}测点 UID(实时库点号),不是 dasId DELETE /v1/point/{id}逗号分隔的测点 UID 列表 clean/forceDelete/template完全被忽略(传什么都一样) 要「查某个服务的测点」,正确写法是
GET /v1/point?SN={服务名}。误把 dasId 传给GET /v1/point/{id}会静默返回空列表(count: 0)而不是报错——这是二次开发最常见的返工点。
1.4 阅读顺序建议
| 你的目标 | 建议读 |
|---|---|
| 先跑通一条链路 | 2-接入准备 → 3-快速开始 |
| 查某个接口的字段 | 4-接口参考 |
| 搞懂测点表各列 / 各枚举含义 | 5-数据字典 |
| 排查调用失败 | 2.2 响应约定 → 6-错误码 → 7-已知限制与坑 |
| 上线前自查 | 2.5 调用前的自检清单 → 7-已知限制与坑(破坏性接口清单) |
1.5 文档版本
| 版本 | 日期 | 说明 |
|---|---|---|
| v1.0 | 2026-09-24 | 首版。对照 dasserver 源码整理,并在真机 2.5.9.20241216 上完成只读实测校准 |
帮助中心