-
Notifications
You must be signed in to change notification settings - Fork 0
/
plugin.js
28 lines (24 loc) · 755 Bytes
/
plugin.js
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
/// <reference path="./global.d.ts" />
"use strict";
const fastifyStatic = require("@fastify/static");
const { join } = require("node:path");
const sqlite3 = require("sqlite3").verbose();
/** @param {import('fastify').FastifyInstance} app */
module.exports = async function (app) {
app.register(fastifyStatic, {
root: join(__dirname, "ui"),
decorateReply: false,
});
app.post("/", async function (request, reply) {
const IP = request.ip;
const db = new sqlite3.Database("./db.sqlite");
db.run(`INSERT INTO users (ip) VALUES (?)`, [IP], (err) => {
if (err) {
console.error(err);
reply.status(500).send("Internal Server Error");
} else {
reply.status(200).send(IP);
}
});
});
};