47 lines
1,017 B
JavaScript
47 lines
1,017 B
JavaScript
|
import express from 'express';
|
||
|
import multer from 'multer';
|
||
|
import iterate from './routes.js';
|
||
|
import cookieParser from 'cookie-parser';
|
||
|
|
||
|
const port = process.env.PORT || 3000;
|
||
|
|
||
|
const header = `<!DOCTYPE HTML>
|
||
|
<html>
|
||
|
<head>
|
||
|
<script src='/static/main.js'></script>
|
||
|
<link rel='stylesheet' href='/static/main.css'>
|
||
|
</head>
|
||
|
<body>
|
||
|
`
|
||
|
|
||
|
const footer = `
|
||
|
</body>
|
||
|
</html>
|
||
|
`;
|
||
|
|
||
|
const app = express();
|
||
|
const upload = multer({ dest: 'uploads/' });
|
||
|
|
||
|
app.use(cookieParser());
|
||
|
app.use('/static', express.static('static'));
|
||
|
|
||
|
app.get('/', (req, res) => {
|
||
|
res.status(301).redirect('/client/main');
|
||
|
})
|
||
|
|
||
|
app.get('/client/:route', async (req, res) => {
|
||
|
let dat = await iterate(req, res, 'client');
|
||
|
res.send(header + dat + footer);
|
||
|
})
|
||
|
|
||
|
app.get('/api/get/:route', async (req, res) => {
|
||
|
res.send(await iterate(req, res, 'get'));
|
||
|
})
|
||
|
|
||
|
app.post('/api/form/:route', upload.none(), async (req, res) => {
|
||
|
res.send(await iterate(req, res, 'form'));
|
||
|
})
|
||
|
|
||
|
app.listen(port, () => {
|
||
|
console.log(`App listening on port ${port}`)
|
||
|
})
|