File size: 1,696 Bytes
55f9c76 6978d88 55f9c76 55c5925 55f9c76 | 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 | const express = require('express');
const multer = require('multer');
const createImage = require('./createImage'); // Your script
const path = require('path');
const axios = require('axios')
const app = express();
const upload = multer({ storage: multer.memoryStorage() });
app.use(express.static('public'));
app.use(express.json());
app.post('/generate', upload.single('avatar'), async (req, res) => {
try {
const { firstName, lastName, emojiId, message, colorId, replySender, replyMsg, replyColor } = req.body;
const buffer = await createImage(
firstName || 'User',
lastName || '',
emojiId || null,
message || '',
parseInt(colorId) || 0,
req.file ? req.file.buffer : null,
replySender || null,
replyMsg || null,
parseInt(replyColor) || 0
);
res.set('Content-Type', 'image/webp');
res.send(buffer);
} catch (error) {
console.error(error);
res.status(500).json({ error: error.message });
}
});
async function dnsTest() {
try {
// Try to reach a major site on Cloudflare
const res = await axios.get('https://1.1.1.1', { timeout: 5000 });
console.log("Hugging Face can see Cloudflare IP");
const res2 = await axios.get('https://cloudflare.com', { timeout: 5000 });
console.log("Hugging Face can see Cloudflare DNS");
} catch (e) {
console.error("Hugging Face is blocking ALL of Cloudflare:", e.message);
}
}
const PORT = process.env.PORT || 7860; // HF Spaces use 7860
app.listen(PORT, () => console.log(`Server running on port ${PORT}`)); |