docs:PROJECT_BRIEF / FRONTEND_DESIGN 架构描述补原生数据面演进
- PROJECT_BRIEF.md:基线免责声明的「已落地」列举补原生数据面(桌面 pion / iOS libwebrtc)+ iOS 原生客户端 + 扫码登录 / Auth Broker;§2 文件传输 P2P 加内联注(协议不变、数据面下沉原生,见 CHANGELOG) - FRONTEND_DESIGN.md:传输 lib 段加注——transfer.ts 经 p2pBackend 抽象选后端,web 仍 JS RTCPeerConnection、桌面 / iOS 换原生(pion / libwebrtc),三端共享线协议;本文只述 web 实现
This commit is contained in:
@@ -236,6 +236,8 @@ lib/relay.ts RelaySession(流式 GET + 分块 POST)
|
||||
lib/transfer.ts Orchestrator(决定 P2P / Relay / fallback)
|
||||
```
|
||||
|
||||
> **数据面下沉原生(2026-06-28 后)**:`transfer.ts` 经 `p2pBackend` 抽象选数据面后端——**web 仍用本表的 JS `RTCPeerConnection`**,桌面 / iOS 换成原生(Go/pion · libwebrtc)以逃 WebView WebRTC 的 256KB rwnd 与渲染器节流;三端共享同一线协议与编排(信令 / relay / 状态机留 JS)。本文余下只述 web 实现,原生数据面见 `CHANGELOG`。
|
||||
|
||||
---
|
||||
|
||||
## 8. SSE 客户端要点
|
||||
|
||||
+2
-1
@@ -1,6 +1,6 @@
|
||||
# Commilitia Drop — 跨 OS 剪贴板与文件传输服务
|
||||
|
||||
> 本文是项目最初的 MVP 规格(设计基线),保留作架构参考;**当前实现状态以 [`CHANGELOG`](CHANGELOG.html) 为准**——其后已落地剪贴板/消息通道、Wails 桌面端、安全加固等,部分「远期」项已实现。
|
||||
> 本文是项目最初的 MVP 规格(设计基线),保留作架构参考;**当前实现状态以 [`CHANGELOG`](CHANGELOG.html) 为准**——其后已落地剪贴板/消息通道、Wails 桌面端、扫码登录与 Auth Broker、**原生数据面(P2P 数据面从浏览器 JS 下沉原生:桌面 pion、iOS libwebrtc)**、iOS 原生客户端、安全加固等,部分「远期」项已实现。
|
||||
|
||||
项目代号 / 仓库名 / 二进制名:`cdrop`
|
||||
部署域名:`drop.commilitia.net`
|
||||
@@ -73,6 +73,7 @@ WebSocket 在 Caddy + Go 当前栈下会被强制降级到 h1.1(RFC 8441 未
|
||||
|
||||
- **优先 P2P**:WebRTC DataChannel,DTLS 即 E2E
|
||||
- 不用 simple-peer,自己包 RTCPeerConnection
|
||||
- (协议不变,数据面后续从浏览器 JS 下沉原生:桌面 Go/pion、iOS libwebrtc,逃 WebKit 256KB rwnd 与渲染器节流;见 `CHANGELOG` 2026-06-28)
|
||||
- ICE 仅自建 STUN(`stun:your-stun.example:3478`),不配 TURN(自建 coturn 跑 STUN-only;现已改用 Cloudflare Realtime TURN)
|
||||
- **P2P 失败 → Relay**(**不**做 Pipe 持久化邮箱)
|
||||
- 双方均在线;传输中掉线重连最多 3 次
|
||||
|
||||
Reference in New Issue
Block a user