Spaces:
Running
Running
File size: 1,720 Bytes
96ac2d0 569d138 96ac2d0 569d138 111e247 569d138 96ac2d0 |
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 |
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<title>My static Space</title>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<div class="card">
<h1>HTTP GET Client</h1>
<div class="input-group">
<input type="url" id="urlInput" placeholder="Enter URL (e.g., https://api.example.com/data)" />
<button onclick="makeRequest()">GET</button>
</div>
<div id="response" class="response-container"></div>
</div>
<script>
async function makeRequest() {
const url = document.getElementById('urlInput').value;
const responseDiv = document.getElementById('response');
if (!url) {
responseDiv.innerHTML = '<div class="error">Please enter a URL</div>';
return;
}
try {
responseDiv.innerHTML = '<div class="loading">Loading...</div>';
const response = await fetch(url);
const data = await response.text();
responseDiv.innerHTML = `
<div class="status">Status: ${response.status} ${response.statusText}</div>
<div class="headers">
<h3>Headers:</h3>
<pre>${JSON.stringify(Object.fromEntries(response.headers), null, 2)}</pre>
</div>
<div class="body">
<h3>Response Body:</h3>
<pre>${data}</pre>
</div>
`;
} catch (error) {
let errorMessage = error.message;
if (error.message.includes('Failed to fetch') || error.name === 'TypeError') {
errorMessage = `CORS Error: ${error.message}. The server may not allow cross-origin requests from this domain.`;
}
responseDiv.innerHTML = `<div class="error">Error: ${errorMessage}</div>`;
}
}
</script>
</body>
</html>
|