Skip to content

Commit 889e359

Browse files
author
wlanboy
committed
added local storage
1 parent 6d71a05 commit 889e359

File tree

2 files changed

+37
-7
lines changed

2 files changed

+37
-7
lines changed

src/main/resources/static/js/http-client.js

Lines changed: 35 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,10 @@ document.addEventListener('DOMContentLoaded', () => {
1919
const exportHistoryBtn = document.getElementById('exportHistoryBtn');
2020

2121
let requestHistory = [];
22+
const STORAGE_KEY = 'k8s_http_client_history';
2223

2324
// --- INITIALISIERUNG ---
25+
loadHistoryFromStorage();
2426
addHeaderRow('Content-Type', 'application/json');
2527

2628
// --- EVENT LISTENER ---
@@ -36,9 +38,11 @@ document.addEventListener('DOMContentLoaded', () => {
3638
}
3739

3840
clearHistoryBtn.addEventListener('click', () => {
39-
requestHistory = [];
40-
renderHistory();
41-
emptyHistoryMsg.style.display = 'block';
41+
if (confirm("Möchtest du die gesamte Historie wirklich löschen?")) {
42+
requestHistory = [];
43+
saveHistoryToStorage();
44+
renderHistory();
45+
}
4246
});
4347

4448
exportHistoryBtn.addEventListener('click', exportHistoryToJson);
@@ -136,7 +140,7 @@ document.addEventListener('DOMContentLoaded', () => {
136140
responseOutput.style.display = 'none';
137141
document.getElementById('errorSummary').innerText = lines[0];
138142
document.getElementById('errorDetail').innerText = lines[1] || "";
139-
143+
140144
stacktraceArea.innerText = stack.trim();
141145
// Sicherstellen, dass er beim Laden des Fehlers erstmal zu ist
142146
stacktraceArea.style.display = 'none';
@@ -168,6 +172,9 @@ document.addEventListener('DOMContentLoaded', () => {
168172
payload, status, duration, responseData
169173
};
170174
requestHistory.unshift(entry);
175+
if (requestHistory.length > 50) requestHistory.pop();
176+
177+
saveHistoryToStorage();
171178
renderHistory();
172179
}
173180

@@ -199,7 +206,7 @@ document.addEventListener('DOMContentLoaded', () => {
199206

200207
resultArea.style.display = 'block';
201208
updateResponseMetadata(entry.status, entry.duration);
202-
209+
203210
const istioPanel = document.getElementById('istioPanel');
204211
if (istioPanel) istioPanel.style.display = 'none';
205212

@@ -220,4 +227,27 @@ document.addEventListener('DOMContentLoaded', () => {
220227
downloadAnchor.click();
221228
downloadAnchor.remove();
222229
}
230+
231+
// --- NEUE STORAGE FUNKTIONEN ---
232+
233+
function saveHistoryToStorage() {
234+
try {
235+
localStorage.setItem(STORAGE_KEY, JSON.stringify(requestHistory));
236+
} catch (e) {
237+
console.error("Fehler beim Speichern im LocalStorage", e);
238+
}
239+
}
240+
241+
function loadHistoryFromStorage() {
242+
try {
243+
const saved = localStorage.getItem(STORAGE_KEY);
244+
if (saved) {
245+
requestHistory = JSON.parse(saved);
246+
renderHistory();
247+
}
248+
} catch (e) {
249+
console.error("Fehler beim Laden aus LocalStorage", e);
250+
requestHistory = [];
251+
}
252+
}
223253
});

src/main/resources/templates/index.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<head>
55
<meta charset="UTF-8">
66
<meta name="viewport" content="width=device-width, initial-scale=1.0">
7-
<title>K8s HTTP Debugger & Istio Analyzer</title>
7+
<title>K8s http Debugger & Istio Analyzer</title>
88

99
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
1010
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.0/font/bootstrap-icons.css">
@@ -76,7 +76,7 @@
7676
<nav class="navbar navbar-dark mb-4">
7777
<div class="container-fluid px-4">
7878
<span class="navbar-brand fw-bold">
79-
<i class="bi bi-box-seam me-2"></i>K8s HTTP Client
79+
<i class="bi bi-box-seam me-2"></i>K8s http Client
8080
</span>
8181
<div id="k8sContext" class="d-flex align-items-center text-white">
8282
<div class="spinner-border spinner-border-sm me-2" role="status"></div>

0 commit comments

Comments
 (0)