async function apiGetRetry(url, retry = false) { try { const res = await fetch(url); if (!res.ok) { throw new Error("HTTP " + res.status); } const text = await res.text(); if (!text || text.trim() === "") { throw new Error("empty response"); } return text.trim(); } catch (e) { console.log("GET failed:", url, e.message); if (retry) { setTimeout(() => apiGetRetry(url, true), 3000); } throw e; } } function getNetInfo1() { document.getElementById("text1").innerText = ""; apiGetRetry("/api/network/interfaces") .then(data => { document.getElementById("text1").innerText = data; }) .catch(() => { document.getElementById("text1").innerText = "获取失败"; }); } function getNetInfo2() { document.getElementById("text2").innerText = ""; apiGetRetry("/api/network/routes") .then(data => { document.getElementById("text2").innerText = data; }) .catch(() => { document.getElementById("text2").innerText = "获取失败"; }); } function getNetInfo3() { document.getElementById("text3").innerText = ""; apiGetRetry("/api/network/dns") .then(data => { document.getElementById("text3").innerText = data; }) .catch(() => { document.getElementById("text3").innerText = "获取失败"; }); } function initPage2() { getNetInfo1(); getNetInfo2(); getNetInfo3(); connectLog("yfkj-networkd.service", "text4"); } function destroyPage2() { disconnectLog(); }