fix(dashboard): XSS escaping, ResizeObserver leak, WS reconnect timer
- Ajout de esc() dans api.js pour échapper les valeurs serveur avant injection innerHTML - Application de esc() sur hostname, ip et agentId dans grid.js et popups.js - Fix fuite mémoire ResizeObserver dans showDetail : déconnexion avant recréation (_resizeObs) - Fix WebSocket reconnect : clearTimeout avant setTimeout pour éviter les timers concurrents (_reconnectTimer) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
555ddc3556
commit
a19705ffda
+3
-1
@@ -1,6 +1,7 @@
|
||||
const App = (() => {
|
||||
let _ws = null;
|
||||
let _reconnectDelay = 1000;
|
||||
let _reconnectTimer = null;
|
||||
let _serverConfig = null;
|
||||
|
||||
// Tooltip global position:fixed
|
||||
@@ -62,7 +63,8 @@ const App = (() => {
|
||||
};
|
||||
|
||||
_ws.onclose = () => {
|
||||
setTimeout(connectWS, _reconnectDelay);
|
||||
clearTimeout(_reconnectTimer);
|
||||
_reconnectTimer = setTimeout(connectWS, _reconnectDelay);
|
||||
_reconnectDelay = Math.min(_reconnectDelay * 2, 30000);
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user