Ruloaooa commited on
Commit
9d2a071
·
verified ·
1 Parent(s): a358ae1

Update index.js

Browse files
Files changed (1) hide show
  1. index.js +38 -0
index.js CHANGED
@@ -6,6 +6,7 @@ const bodyParser = require('body-parser');
6
  const path = require('path');
7
  const loadImg = require('./loader');
8
  const app = express();
 
9
  const port = 7860;
10
  app.set('trust proxy', 1);
11
 
@@ -321,6 +322,43 @@ app.post('/generate2', async (req, res) => {
321
  }
322
  });
323
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
324
  // Mulai server Express
325
  app.listen(port, () => {
326
  console.log(`Server berjalan di http://localhost:${port}`);
 
6
  const path = require('path');
7
  const loadImg = require('./loader');
8
  const app = express();
9
+ const puppeteer = require('puppeteer');
10
  const port = 7860;
11
  app.set('trust proxy', 1);
12
 
 
322
  }
323
  });
324
 
325
+ app.post("/brat", async (req, res) => {
326
+ const { text } = req.body;
327
+
328
+ if (!text) {
329
+ return res.status(400).json({ error: "Teks tidak boleh kosong." });
330
+ }
331
+
332
+ let browser;
333
+
334
+ try {
335
+ // Buka browser baru
336
+ browser = await puppeteer.launch({
337
+ headless: true,
338
+ args: ["--no-sandbox", "--disable-setuid-sandbox"],
339
+ });
340
+
341
+ const page = await browser.newPage();
342
+ await page.goto("https://www.bratgenerator.com/");
343
+ await page.click("#toggleButtonWhite"); // Aktifkan tema putih
344
+ await page.type("#textInput", text); // Isi teks
345
+
346
+ // Ambil screenshot elemen hasil
347
+ const screenshotBuffer = await page.$eval("#textOverlay", async (element) => {
348
+ return await element.screenshot({ encoding: "binary" });
349
+ });
350
+
351
+ // Kirim hasil sebagai image
352
+ res.set("Content-Type", "image/jpeg");
353
+ res.send(screenshotBuffer);
354
+ } catch (error) {
355
+ console.error("Error generating Brat:", error);
356
+ res.status(500).json({ error: "Terjadi kesalahan saat membuat gambar." });
357
+ } finally {
358
+ if (browser) await browser.close();
359
+ }
360
+ });
361
+
362
  // Mulai server Express
363
  app.listen(port, () => {
364
  console.log(`Server berjalan di http://localhost:${port}`);