Skip to content

开发者文档

本章节为开发者提供 TestNet 平台的技术参考资料,包括 API 接口、前端架构、客户端设计和测试指南。

文档索引

文档说明
API 端点索引后端 Controller 暴露的完整接口索引
API 端点索引后端 Controller 暴露的完整接口索引
前端开发指南ResourceCrudPage 组件使用、CRUD 骨架开发
客户端架构Go 扫描客户端架构设计、执行器实现、安全策略
前端 E2E 测试Playwright 端到端测试指南
Mock 测试指南Mock 数据文件规范与本地模拟执行
DSL 验证工具testnet-client validate/test/verify 子命令用法

技术栈速览

后端(testnet-server)

技术版本用途
Spring Boot3.4.3核心框架
JDK17运行环境
PostgreSQL16主数据库
Redis7缓存 / 会话
MyBatis-Plus3.5.8ORM 框架
Flyway-数据库版本迁移
Resilience4j2.2.0熔断 / 重试 / 限流
Springdoc OpenAPI2.3.0API 文档生成

前端(testnet-web)

技术版本用途
Vue3.5UI 框架
Vite8构建工具
TypeScript5.9类型系统
Naive UI2.44组件库
UnoCSS66原子化 CSS
Pinia3状态管理
CodeMirror6代码编辑器
ECharts6图表库

扫描客户端(testnet-client)

技术版本用途
Go1.21+开发语言
Zap-结构化日志
gopsutil-系统信息采集

开发环境快速启动

bash
# 1. 启动开发依赖(PostgreSQL + Redis)
docker compose -f docker-compose-dev.yml up -d

# 2. 启动后端
cd testnet-server
mvn spring-boot:run
# 服务启动在 http://localhost:8081

# 3. 启动前端
cd testnet-web
npm install && npm run dev
# 前端启动在 http://localhost:3100

# 4. 启动扫描节点(可选)
cd testnet-client
go run ./cmd -server http://localhost:8081 -secret <secret> -name dev-node

API 认证

所有 API(除白名单端点外)需在请求头携带 JWT Token:

http
Authorization: Bearer <your-jwt-token>

Token 通过 POST /api/v1/auth/login 获取,有效期 24 小时

白名单端点(无需认证)

  • POST /api/v1/auth/login
  • POST /api/v1/client/register
  • POST /api/v1/client/heartbeat
  • POST /api/v1/client/offline
  • GET /api/v1/client/task/**
  • GET /api/v1/client/storage/**
  • GET /api/v1/client/config-file/**
  • /api/v1/ws/**(WebSocket 端点)
  • GET /api/v1/license/info
  • GET /api/v1/license/machine-id
  • POST /api/v1/license/activate
  • GET /errorOPTIONS /**

基于 MIT 协议发布