Files
omnivore/packages/content-fetch/app.js

36 lines
923 B
JavaScript

require('dotenv').config();
const express = require('express');
const { contentFetchRequestHandler } = require('./request_handler');
const app = express();
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
if (!process.env.VERIFICATION_TOKEN) {
throw new Error('VERIFICATION_TOKEN environment variable is not set');
}
app.all('/', async (req, res) => {
if (req.method !== 'GET' && req.method !== 'POST') {
console.error('request method is not GET or POST')
return res.sendStatus(405)
}
if (req.query.token !== process.env.VERIFICATION_TOKEN) {
console.error('query does not include valid token')
return res.sendStatus(403)
}
return contentFetchRequestHandler(req, res);
});
const PORT = parseInt(process.env.PORT) || 8080;
app.listen(PORT, () => {
console.log(`App listening on port ${PORT}`);
console.log('Press Ctrl+C to quit.');
});
module.exports = app;