nginx-proxy-manager/backend/routes/api/main.js

52 lines
1.4 KiB
JavaScript
Raw Normal View History

2018-06-19 18:47:26 -04:00
const express = require('express');
const pjson = require('../../package.json');
const error = require('../../lib/error');
2018-06-19 18:47:26 -04:00
let router = express.Router({
caseSensitive: true,
strict: true,
mergeParams: true
2018-06-19 18:47:26 -04:00
});
/**
* Health Check
* GET /api
*/
router.get('/', (req, res/*, next*/) => {
let version = pjson.version.split('-').shift().split('.');
2018-06-19 18:47:26 -04:00
res.status(200).send({
status: 'OK',
version: {
major: parseInt(version.shift(), 10),
minor: parseInt(version.shift(), 10),
revision: parseInt(version.shift(), 10)
}
});
2018-06-19 18:47:26 -04:00
});
router.use('/schema', require('./schema'));
2018-06-19 18:47:26 -04:00
router.use('/tokens', require('./tokens'));
router.use('/users', require('./users'));
router.use('/audit-log', require('./audit-log'));
router.use('/reports', require('./reports'));
router.use('/settings', require('./settings'));
2018-07-08 21:22:10 -04:00
router.use('/nginx/proxy-hosts', require('./nginx/proxy_hosts'));
router.use('/nginx/redirection-hosts', require('./nginx/redirection_hosts'));
router.use('/nginx/dead-hosts', require('./nginx/dead_hosts'));
router.use('/nginx/streams', require('./nginx/streams'));
2018-07-24 02:56:39 -04:00
router.use('/nginx/access-lists', require('./nginx/access_lists'));
router.use('/nginx/certificates', require('./nginx/certificates'));
/**
* API 404 for all other routes
*
* ALL /api/*
*/
router.all(/(.+)/, function (req, res, next) {
req.params.page = req.params['0'];
next(new error.ItemNotFoundError(req.params.page));
});
2018-06-19 18:47:26 -04:00
module.exports = router;