fix: WHOIS defensive HTML response check, prevent Unexpected token error

This commit is contained in:
Rene Fichtmueller 2026-03-30 05:55:43 +02:00
parent 96950992df
commit a0abfb3a62

View File

@ -2570,11 +2570,14 @@ async function loadWhoisData(asn) {
$('whoisContent').innerHTML = '<div class="section-loading">Loading WHOIS data...</div>'; $('whoisContent').innerHTML = '<div class="section-loading">Loading WHOIS data...</div>';
try { try {
var resp = await fetch('/api/whois?resource=AS' + asn); var resp = await fetch('/api/whois?resource=AS' + asn);
var d = await resp.json(); if (!resp.ok) { $('whoisContent').innerHTML = '<div style="color:var(--muted);font-size:.85rem">WHOIS unavailable (server ' + resp.status + ')</div>'; return; }
var text = await resp.text();
if (!text || text[0] === '<') { $('whoisContent').innerHTML = '<div style="color:var(--muted);font-size:.85rem">WHOIS temporarily unavailable</div>'; return; }
var d = JSON.parse(text);
if (d.error) { $('whoisContent').innerHTML = '<div style="color:var(--orange);font-size:.85rem">WHOIS: ' + escHtml(d.error) + '</div>'; return; } if (d.error) { $('whoisContent').innerHTML = '<div style="color:var(--orange);font-size:.85rem">WHOIS: ' + escHtml(d.error) + '</div>'; return; }
renderWhois(d); renderWhois(d);
} catch (e) { } catch (e) {
$('whoisContent').innerHTML = '<div style="color:var(--red);font-size:.85rem">WHOIS lookup failed: ' + escHtml(e.message) + '</div>'; $('whoisContent').innerHTML = '<div style="color:var(--muted);font-size:.85rem">WHOIS lookup failed: ' + escHtml(e.message) + '</div>';
} }
} }