Key-Scanner: Auth-Header fix, 401-mit-Usage-Handling, breitere Suche, Live-Refresh

- AnthropicKeyChecker: Bearer-Auth + CLI-Header statt x-api-key (identisch mit AnthropicService)
- 401 mit Usage-Headern → 'usage_limited' statt 'invalid' (Key gültig, Limit erreicht)
- Haiku-Phase entfernt, Streaming-Logik entfernt → ein einfacher Request reicht
- KeyScannerService: SearchLanguages 1→13, PathExtensions 24 neue Pfad-Filter
- ApiKeysEndpoint: usage_limited als 'ok' ans Frontend
- Frontend: Adopt-Button auch bei quota_exceeded, Live-Refresh alle 3s während Scan
- CSS: Overflow-Ellipsis für lange URLs in Admin-Listen
This commit is contained in:
Meleki committed 2026-03-12 17:11:06 +01:00
1 parent 006ef223bf
commit 608118a823
5 files changed
+55 -15

No files matched your search

+3 -3
View File
@@ -332,8 +332,8 @@ registerPage('api-keys', {
});
actions.appendChild(recheckBtn);
// Übernehmen (nur bei valid)
if (sk.status === 'valid') {
// Übernehmen (bei valid oder quota_exceeded)
if (sk.status === 'valid' || sk.status === 'quota_exceeded') {
var adoptBtn = document.createElement('button');
adoptBtn.className = 'icon-btn';
adoptBtn.title = 'Als API-Key übernehmen';
@@ -387,13 +387,13 @@ registerPage('api-keys', {
if (!pollTimer) {
pollTimer = setInterval(async function() {
var st = await apiScanStatus();
await loadScannedKeys();
if (!st.running) {
clearInterval(pollTimer);
pollTimer = null;
scanBtn.disabled = false;
scanBtn.innerHTML = '<i class="fa fa-search"></i> Jetzt scannen';
scanStatusEl.textContent = st.lastResult ? '✅ ' + st.lastResult : '';
await loadScannedKeys();
}
}, 3000);
}