async function fetchTime() { const el = document.getElementById('server-time'); el.textContent = 'Loading...'; try { const res = await fetch('/api/time'); const data = await res.json(); el.textContent = data.time; } catch (e) { el.textContent = 'Error: ' + e.message; } } async function fetchGreeting() { const name = document.getElementById('name-input').value || 'World'; const el = document.getElementById('greeting'); el.textContent = 'Loading...'; try { const res = await fetch('/api/hello?name=' + encodeURIComponent(name)); const data = await res.json(); el.textContent = data.message; } catch (e) { el.textContent = 'Error: ' + e.message; } } async function fetchEcho() { const input = document.getElementById('echo-input').value; const el = document.getElementById('echo-result'); el.textContent = 'Loading...'; try { const res = await fetch('/api/echo', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ text: input, timestamp: new Date().toISOString() }) }); const data = await res.json(); el.textContent = JSON.stringify(data, null, 2); } catch (e) { el.textContent = 'Error: ' + e.message; } } // Load server time on page load. fetchTime();