改造实时事件缓存同步
This commit is contained in:
@@ -5,8 +5,15 @@ import { requireAdminRoles } from './session.js'
|
||||
|
||||
const router = Router()
|
||||
|
||||
router.get('/realtime', requireAdminRoles(['admin', 'operator', 'support']), (_req, res) => {
|
||||
openAdminRealtimeStream(res)
|
||||
router.get('/realtime', requireAdminRoles(['admin', 'operator', 'support']), (req, res) => {
|
||||
openAdminRealtimeStream(res, resolveLastEventId(req))
|
||||
})
|
||||
|
||||
function resolveLastEventId(request: {
|
||||
get(name: string): string | undefined
|
||||
query: Record<string, unknown>
|
||||
}) {
|
||||
return Number(request.get('Last-Event-ID') || request.query.lastEventId || 0) || 0
|
||||
}
|
||||
|
||||
export default router
|
||||
|
||||
@@ -180,7 +180,11 @@ router.delete(
|
||||
)
|
||||
|
||||
router.get('/realtime', (req, res) => {
|
||||
openWorkerRealtimeStream(res, getRequiredWorkerSession(req).workerId)
|
||||
openWorkerRealtimeStream(
|
||||
res,
|
||||
getRequiredWorkerSession(req).workerId,
|
||||
Number(req.get('Last-Event-ID') || req.query.lastEventId || 0) || 0,
|
||||
)
|
||||
})
|
||||
|
||||
router.get(
|
||||
|
||||
Reference in New Issue
Block a user