Initial commit
This commit is contained in:
61
fingerp/static/index.html
Normal file
61
fingerp/static/index.html
Normal file
@ -0,0 +1,61 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Fingerprint Collector</title>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Fingerprint Collector</h1>
|
||||
<p id="status">Collecting fingerprint...</p>
|
||||
|
||||
<script>
|
||||
function getCanvasFingerprint() {
|
||||
const canvas = document.createElement("canvas");
|
||||
const ctx = canvas.getContext("2d");
|
||||
|
||||
if (!ctx) return "";
|
||||
|
||||
ctx.textBaseline = "top";
|
||||
ctx.font = "16px Arial";
|
||||
ctx.fillText("fingerprint", 10, 10);
|
||||
|
||||
return canvas.toDataURL();
|
||||
}
|
||||
|
||||
async function submitFingerprint() {
|
||||
const fingerprint = getCanvasFingerprint();
|
||||
|
||||
try {
|
||||
const response = await fetch("/fingerprint", {
|
||||
method: "POST",
|
||||
headers: {
|
||||
"Content-Type": "application/json",
|
||||
},
|
||||
body: JSON.stringify({ fingerprint: fingerprint }),
|
||||
});
|
||||
|
||||
const result = await response.json();
|
||||
const hash = result.fingerprint_hash;
|
||||
|
||||
const checkResponse = await fetch("/fingerprint/" + hash);
|
||||
const checkResult = await checkResponse.json();
|
||||
|
||||
const shortHash = hash.substring(0, 8);
|
||||
if (checkResult.count > 1) {
|
||||
document.getElementById("status").textContent =
|
||||
"Hello, " + shortHash + ". We've seen you before!";
|
||||
} else {
|
||||
document.getElementById("status").textContent =
|
||||
"Hello, " + shortHash + ". I see you're new here";
|
||||
}
|
||||
} catch (error) {
|
||||
document.getElementById("status").textContent =
|
||||
"Error: " + error.message;
|
||||
}
|
||||
}
|
||||
|
||||
submitFingerprint();
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user