54 lines
1.2 KiB
JavaScript
54 lines
1.2 KiB
JavaScript
const fastify = require('fastify')();//{ logger: true });
|
|
const path = require('path');
|
|
|
|
const csass = require("./compile_sass").compileSassMain();
|
|
|
|
fastify.register(require('@fastify/static'), {
|
|
root: path.join(__dirname, 'public'),
|
|
prefix: '/public/',
|
|
});
|
|
|
|
fastify.register(require('@fastify/leveldb'), {
|
|
name: 'db'
|
|
}, err => {
|
|
if (err) throw err
|
|
});
|
|
|
|
|
|
|
|
fastify.get('/', (req, reply) => reply.sendFile('/template/home.html'));
|
|
fastify.register(require('./router/api'), { prefix: '/api' });
|
|
|
|
fastify.get('/:id', (req, reply) => {
|
|
try{
|
|
const ec = parseInt(req.params.id);
|
|
switch(ec){
|
|
case 400:
|
|
case 401:
|
|
case 402:
|
|
case 403:
|
|
case 404:
|
|
case 405:
|
|
reply.code(ec).send("Client Error");
|
|
break;
|
|
case 500:
|
|
reply.code(ec).send("Internal Error");
|
|
break;
|
|
default:
|
|
throw undefined;
|
|
}
|
|
}catch(e){
|
|
reply.sendFile('/template/journey.html');
|
|
}
|
|
});
|
|
fastify.get('/view/:id', (req, reply) => reply.sendFile('/template/journey.html'));
|
|
fastify.get('/short/:id', (req, reply) => reply.sendFile('/template/journey.html'));
|
|
|
|
|
|
|
|
|
|
fastify.listen({port:8080,address:'0.0.0.0'} ,(err,address) => {
|
|
if (err) throw err;
|
|
console.log("Listening on", address);
|
|
|
|
}); |