live-sfu-demo/internal/server
noelorin c7f70970ac feat: POST+JWT SSE + permission visibility
Backend:
- SSE endpoints changed from GET to POST for JWT auth compliance
- Chat subscription moved to /api/room/{room}/chat/subscribe (avoids route conflict)
- handleAuthCheck now returns config:write permission (was missing from response)

Frontend:
- EventSource replaced with fetch POST + Authorization Bearer header
- Token persisted in localStorage, cleared on logout
- postSSE helper with exponential backoff reconnection
- rooms.tsx: SSE/loading gated on can('room:list'), not just isAuthed
- watch.tsx: room events SSE gated on can('room:watch'), chat SSE on can('room:chat')
- watch.tsx: subscribe button disabled when lacking room:subscribe
- permissions.ts: added isPublisher() helper
2026-08-23 23:55:23 +08:00
..
static feat: POST+JWT SSE + permission visibility 2026-08-23 23:55:23 +08:00
auth_handler.go feat: POST+JWT SSE + permission visibility 2026-08-23 23:55:23 +08:00
chat.go feat(chat): room chat/danmaku over SSE with history replay, host broadcast API and rate limit 2026-08-20 15:03:18 +08:00
distribution.go feat: add runtime config, room distributor override, user management & UI polish 2026-08-23 19:48:32 +08:00
gateway.go feat: realtime rooms via SSE (global rooms/events) 2026-08-23 23:19:12 +08:00
grpc.go feat: 接入 sync-live 后端重构,前端全面对齐新协议与接口 2026-08-21 00:31:51 +08:00
grpc_test.go feat: 接入 sync-live 后端重构,前端全面对齐新协议与接口 2026-08-21 00:31:51 +08:00
manage.go feat: realtime rooms via SSE (global rooms/events) 2026-08-23 23:19:12 +08:00
playlist.go chore: commit remaining worktree changes (room/playlist/docs/deps) 2026-08-23 16:18:28 +08:00
proxy.go feat(distro): sfu distributor abstraction + fanout manager + cdn stub 2026-08-23 14:01:26 +08:00
rooms.go feat: realtime rooms via SSE (global rooms/events) 2026-08-23 23:19:12 +08:00
runtime_config.go feat: add runtime config, room distributor override, user management & UI polish 2026-08-23 19:48:32 +08:00
server.go feat: POST+JWT SSE + permission visibility 2026-08-23 23:55:23 +08:00
service.go feat: add runtime config, room distributor override, user management & UI polish 2026-08-23 19:48:32 +08:00
token.go feat: live SFU fan-out demo (Cloudflare Realtime + SRS) 2026-08-17 15:14:51 +08:00
token_test.go feat: 接入 sync-live 后端重构,前端全面对齐新协议与接口 2026-08-21 00:31:51 +08:00