From cbfb1a11b7e3fea0367d5a17a77411728517bbf7 Mon Sep 17 00:00:00 2001 From: mrdom557-web Date: Tue, 9 Sep 2025 12:03:39 +0700 Subject: [PATCH] Create app.js verify --- app.js | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 app.js diff --git a/app.js b/app.js new file mode 100644 index 0000000..66de816 --- /dev/null +++ b/app.js @@ -0,0 +1,37 @@ +// Import Express.js +const express = require('express'); + +// Create an Express app +const app = express(); + +// Middleware to parse JSON bodies +app.use(express.json()); + +// Set port and verify_token +const port = process.env.PORT || 3000; +const verifyToken = process.env.VERIFY_TOKEN; + +// Route for GET requests +app.get('/', (req, res) => { + const { 'hub.mode': mode, 'hub.challenge': challenge, 'hub.verify_token': token } = req.query; + + if (mode === 'subscribe' && token === verifyToken) { + console.log('WEBHOOK VERIFIED'); + res.status(200).send(challenge); + } else { + res.status(403).end(); + } +}); + +// Route for POST requests +app.post('/', (req, res) => { + const timestamp = new Date().toISOString().replace('T', ' ').slice(0, 19); + console.log(`\n\nWebhook received ${timestamp}\n`); + console.log(JSON.stringify(req.body, null, 2)); + res.status(200).end(); +}); + +// Start the server +app.listen(port, () => { + console.log(`\nListening on port ${port}\n`); +});