NAC_Blockchain/nac-api-server
NAC Admin fe8f935bab Issue #75/76/77: Tier3辖区(225测试)+跨版本兼容检测(6测试)+NAC_Lens路由层(8测试)
Issue #75: 实现10个Tier3新兴市场辖区(BR/IN/TH/ID/NG/MX/ZA/TR/SA/RU)
- 每辖区独立TxContext数据结构和ConstitutionalValidator
- 225个测试全部通过(Tier1:55+Tier2:100+Tier3:70)
- in模块重命名为in_jurisdiction避免Rust关键字冲突

Issue #76: 实现辖区规则跨版本兼容性检测(nac-jurisdiction-compat)
- CompatibilityChecker支持4种兼容性级别
- 检测AML阈值/KYC等级/资产类型/监管机构变更
- 6个测试全部通过

Issue #77: NAC_Lens辖区路由层集成(nac-lens-jurisdiction-router)
- 支持单辖区/跨辖区/规则更新广播/CR广播/节点注册5种消息类型
- 跨辖区各自独立出具CR(参与即是共识,非多签)
- 规则更新须CA签名立即生效(约法即是治法)
- 8个测试全部通过

NRPC->NAC_Lens: 更新nac-api-server/nac-sdk/nac-asset-onboarding/nac-udm注释
修复Issue#74测试隔离问题(并发测试目录污染)

总测试: 252个全部通过
CBPP合规: 约法即是治法|宪法即是规则|参与即是共识|节点产生区块交易决定区块大小
2026-03-07 15:28:13 +08:00
..
src Issue #75/76/77: Tier3辖区(225测试)+跨版本兼容检测(6测试)+NAC_Lens路由层(8测试) 2026-03-07 15:28:13 +08:00
tests fix: 主网安全审计修复 FIX-005/006/007 2026-03-07 01:18:48 +08:00
.gitignore Initial commit: NAC公链核心模块 - 生产级别代码 2026-02-16 19:19:43 -05:00
Cargo.lock feat: 主网模块集成 + 彻底去除以太坊技术栈残留 2026-03-07 06:10:51 +08:00
Cargo.toml feat: 主网模块集成 + 彻底去除以太坊技术栈残留 2026-03-07 06:10:51 +08:00
README.md 同步所有模块更新 2026-02-18 23:28:26 -05:00
config.toml.example 同步所有模块更新 2026-02-18 23:28:26 -05:00
issue_007_nac_lens_upgrade.md feat(issue-63): 完成去以太坊化 - NRPC全库更名为NAC_lens + 编译器RPC检测 + nac-lens 100%完成 2026-02-28 09:50:03 +08:00

README.md

NAC API服务器

NAC公链统一API服务器为钱包应用和RWA资产交易所提供后端API支持。

功能特性

核心功能

  • 钱包API - 余额查询、转账、交易历史
  • 交易所API - 资产列表、订单管理、市场数据、订单簿
  • 区块链集成 - 通过RPC连接真实NAC区块链节点
  • 安全机制 - JWT认证、速率限制、输入验证
  • 错误处理 - 统一错误格式、详细日志
  • 配置管理 - TOML配置文件支持

技术栈

  • Web框架: Axum 0.7
  • 异步运行时: Tokio
  • 序列化: Serde
  • HTTP客户端: Reqwest
  • 认证: JWT (jsonwebtoken)
  • 验证: Validator
  • 日志: Tracing

快速开始

1. 配置

复制配置文件示例:

cp config.toml.example config.toml

编辑config.toml修改区块链RPC地址和JWT密钥。

2. 编译

cargo build --release

3. 运行

cargo run --release

服务器将在http://0.0.0.0:8080启动。

4. 测试

# 运行所有测试
cargo test

# 健康检查
curl http://localhost:8080/health

API文档

钱包API

  • GET /api/wallet/balance/:address - 查询余额
  • POST /api/wallet/transfer - 发起转账
  • GET /api/wallet/transactions/:address - 查询交易历史
  • GET /api/wallet/transaction/:hash - 查询交易详情

交易所API

  • GET /api/exchange/assets - 获取资产列表
  • POST /api/exchange/orders - 创建订单
  • GET /api/exchange/orders/:order_id - 查询订单详情
  • GET /api/exchange/market/:asset - 获取市场数据
  • GET /api/exchange/orderbook/:asset - 获取订单簿
  • GET /api/exchange/trades - 获取最近交易

详细API文档请参考代码注释。

项目结构

nac-api-server/
├── src/
│   ├── main.rs              # 主入口
│   ├── blockchain/          # 区块链客户端
│   ├── auth/                # 认证模块
│   ├── middleware/          # 中间件
│   ├── error/               # 错误处理
│   ├── config/              # 配置管理
│   ├── models/              # 数据模型
│   ├── wallet.rs            # 钱包API
│   └── exchange.rs          # 交易所API
├── tests/                   # 集成测试
├── Cargo.toml               # 依赖配置
├── config.toml.example      # 配置示例
└── README.md                # 本文档

测试统计

  • 总测试数: 20个
  • 测试通过率: 100%
  • 代码覆盖: 核心模块全覆盖

许可证

Copyright © 2026 NAC Team. All rights reserved.


版本: 1.0.0
最后更新: 2026-02-18