TESTAPIJS / index.html
ginipick's picture
Update index.html
b35896d verified
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Test /add_points_and_refresh_fn API</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/tailwindcss/2.2.19/tailwind.min.js"></script>
</head>
<body class="bg-gray-100 p-8">
<div class="max-w-2xl mx-auto bg-white rounded-lg shadow-lg p-6">
<h1 class="text-3xl font-bold mb-6">API ํ…Œ์ŠคํŠธ</h1>
<div class="mb-4">
<label class="block text-gray-700 text-sm font-bold mb-2" for="email">
์ด๋ฉ”์ผ
</label>
<input type="email"
id="email"
class="shadow appearance-none border rounded w-full py-2 px-3 text-gray-700 leading-tight focus:outline-none focus:shadow-outline"
placeholder="์ด๋ฉ”์ผ์„ ์ž…๋ ฅํ•˜์„ธ์š”">
</div>
<div class="mb-4">
<button id="submit"
class="bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded focus:outline-none focus:shadow-outline">
์ œ์ถœ
</button>
</div>
<div class="mb-4">
<label class="block text-gray-700 text-sm font-bold mb-2">
์ƒํƒœ
</label>
<div id="status"
class="border rounded w-full py-2 px-3 text-gray-700 bg-gray-100">
</div>
</div>
<div class="mb-4">
<label class="block text-gray-700 text-sm font-bold mb-2">
๊ฒฐ๊ณผ๊ฐ’
</label>
<div id="value"
class="border rounded w-full py-2 px-3 text-gray-700 bg-gray-100">
</div>
</div>
<div id="debug" class="mt-4 p-4 bg-gray-200 rounded">
<h2 class="font-bold mb-2">๋””๋ฒ„๊ทธ ์ •๋ณด</h2>
<pre id="debug-info" class="whitespace-pre-wrap"></pre>
</div>
</div>
<script type="module">
import { client } from 'https://cdn.jsdelivr.net/npm/@gradio/client/+esm';
function log(message) {
const debugInfo = document.getElementById('debug-info');
debugInfo.textContent += message + '\n';
console.log(message);
}
async function handleSubmit() {
const email = document.getElementById('email').value;
const statusElement = document.getElementById('status');
const valueElement = document.getElementById('value');
document.getElementById('debug-info').textContent = '';
statusElement.textContent = '์ฒ˜๋ฆฌ์ค‘...';
valueElement.innerHTML = '';
log(`์ด๋ฉ”์ผ ์ž…๋ ฅ๊ฐ’: ${email}`);
try {
log('Gradio ํด๋ผ์ด์–ธํŠธ ์—ฐ๊ฒฐ ์‹œ๋„...');
const gradioClient = await client("ginipick/Dokdo-pay");
log('ํด๋ผ์ด์–ธํŠธ ์—ฐ๊ฒฐ ์„ฑ๊ณต');
log('API ํ˜ธ์ถœ ์‹œ์ž‘...');
const result = await gradioClient.predict("/add_points_and_refresh_fn", {
email: email
});
log(`์‘๋‹ต ๋ฐ์ดํ„ฐ: ${JSON.stringify(result.data, null, 2)}`);
statusElement.textContent = result.data[0] || '์‘๋‹ต ์—†์Œ';
valueElement.innerHTML = result.data[1] || '์‘๋‹ต ์—†์Œ';
} catch (error) {
log(`์—๋Ÿฌ ๋ฐœ์ƒ: ${error.message}`);
statusElement.textContent = `์—๋Ÿฌ: ${error.message}`;
valueElement.innerHTML = '์—๋Ÿฌ ๋ฐœ์ƒ';
console.error('Error:', error);
}
}
// DOM์ด ๋กœ๋“œ๋œ ํ›„ ์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ ์„ค์ •
document.addEventListener('DOMContentLoaded', () => {
const submitButton = document.getElementById('submit');
submitButton.addEventListener('click', handleSubmit);
});
</script>
</body>
</html>