File size: 2,691 Bytes
c0d0d43 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
<!DOCTYPE html>
<html>
<head>
<title>Flask Web App</title>
<style>
body {
font-family: Arial, sans-serif;
max-width: 800px;
margin: 0 auto;
padding: 20px;
line-height: 1.6;
}
.container {
border: 1px solid #ddd;
border-radius: 5px;
padding: 20px;
margin-top: 20px;
}
button {
background-color: #4CAF50;
color: white;
padding: 10px 15px;
border: none;
border-radius: 4px;
cursor: pointer;
margin-right: 10px;
}
button:hover {
background-color: #45a049;
}
pre {
background-color: #f5f5f5;
padding: 10px;
border-radius: 4px;
overflow-x: auto;
}
</style>
</head>
<body>
<h1>Welcome to Flask Web App</h1>
<p>The current server time is: {{ current_time }}</p>
<div class="container">
<h2>API Demo</h2>
<button id="getTimeBtn">Get Current Time</button>
<button id="sendEchoBtn">Send Echo Request</button>
<div id="result">
<pre id="output">Results will appear here...</pre>
</div>
</div>
<script>
document.getElementById('getTimeBtn').addEventListener('click', async () => {
try {
const response = await fetch('/api/time');
const data = await response.json();
document.getElementById('output').textContent = JSON.stringify(data, null, 2);
} catch (error) {
document.getElementById('output').textContent = 'Error: ' + error.message;
}
});
document.getElementById('sendEchoBtn').addEventListener('click', async () => {
try {
const testData = {
message: "Hello from the client!",
timestamp: new Date().toISOString()
};
const response = await fetch('/api/echo', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(testData)
});
const data = await response.json();
document.getElementById('output').textContent = JSON.stringify(data, null, 2);
} catch (error) {
document.getElementById('output').textContent = 'Error: ' + error.message;
}
});
</script>
</body>
</html>
|