| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- const express = require('express');
- const pjson = require('../../package.json');
- const error = require('../../lib/error');
- const internalNginx = require('../../internal/nginx');
- let router = express.Router({
- caseSensitive: true,
- strict: true,
- mergeParams: true
- });
- /**
- * Health Check
- * GET /api
- */
- router.get('/', (req, res/*, next*/) => {
- let version = pjson.version.split('-').shift().split('.');
- res.status(200).send({
- status: 'OK',
- version: {
- major: parseInt(version.shift(), 10),
- minor: parseInt(version.shift(), 10),
- revision: parseInt(version.shift(), 10)
- }
- });
- });
- router.use('/schema', require('./schema'));
- 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'));
- 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/ssl-passthrough-hosts', require('./nginx/ssl_passthrough_hosts'));
- router.use('/nginx/streams', require('./nginx/streams'));
- router.use('/nginx/access-lists', require('./nginx/access_lists'));
- router.use('/nginx/certificates', require('./nginx/certificates'));
- router.get('/ssl-passthrough-enabled', (req, res/*, next*/) => {
- res.status(200).send({
- status: 'OK',
- ssl_passthrough_enabled: internalNginx.sslPassthroughEnabled()
- });
- });
- /**
- * 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));
- });
- module.exports = router;
|