test something

This commit is contained in:
ashley 2025-10-07 16:34:36 +02:00
parent 42a1b60b0c
commit 4e09c44150

View File

@ -53,32 +53,39 @@ module.exports = function (app, config, renderTemplate) {
f.body.pipe(res); f.body.pipe(res);
}); });
app.get("/api/geo", async (req, res) => { app.get("/api/geo", async (req, res) => {
try { try {
let ip = let ip =
req.headers["x-forwarded-for"]?.split(",")[0].trim() || req.headers["x-forwarded-for"]?.split(",")[0].trim() ||
req.socket.remoteAddress; req.socket.remoteAddress;
if (ip && ip.startsWith("::ffff:")) ip = ip.slice(7); if (ip && ip.startsWith("::ffff:")) {
if (!ip || ip.startsWith("192.") || ip.startsWith("10.") || ip === "::1") { ip = ip.slice(7);
return res.json({ countryCode: "ZZ" }); }
if (!ip) {
return res.status(400).json({ error: "No IP found" });
} }
const response = await fetch(`https://ip2c.org/${ip}`); const response = await fetch(`https://ip2c.org/${ip}`);
const text = await response.text(); const text = await response.text();
const parts = text.trim().split(";"); const parts = text.trim().split(";");
const countryCode = parts[1] || "ZZ"; const countryCode = parts[1] || "ZZ";
res.setHeader("Content-Type", "application/json");
res.setHeader("Access-Control-Allow-Origin", "*"); res.setHeader("Access-Control-Allow-Origin", "*");
res.json({ countryCode }); res.json({ countryCode });
} catch { } catch (err) {
res.json({ countryCode: "ZZ" }); res.setHeader("Content-Type", "application/json");
res.setHeader("Access-Control-Allow-Origin", "*");
res.status(500).json({ countryCode: "ZZ", error: true, details: String(err) });
} }
}); });
app.get("/ggpht/:v", async function (req, res) { app.get("/ggpht/:v", async function (req, res) {
var url = `https://yt3.ggpht.com/${req.params.v}`; var url = `https://yt3.ggpht.com/${req.params.v}`;