Конфликт маршрутов в экспрессе - PullRequest
0 голосов
/ 14 января 2019

Я создаю документацию для своего API, я создал для него маршрут как localhost:4000/docs, но по какой-то причине при наборе localhost:4000 браузер загружает содержимое документации, я забываю что-то еще, что могу ничего не представляю.

app.js

const express = require('express')
const app = express()

require('./middlewares/md-bootConfig')(app)//start config
require('./routes/Login')(app) //route login
require('./routes/Home')(app) //route home
require('./routes/Doc')(app) //route documents api

module.exports = app

статическая папка

const bodyParser = require('body-parser')
const logger = require('morgan')
const path = require('path')
const express =  require('express')
module.exports = app => {
    app.use(express.static(path.join(__dirname, '../../../docs')))
    app.set('json spaces', 2)
    app.use(bodyParser.urlencoded({extended: false}));
    app.use(bodyParser.json());
    app.use(logger('dev'));
}

маршрут / документы

const path = require('path')
module.exports = app => {
    app.get('/docs', (req, res) => {
        res.sendFile(path.join(__dirname, '../../../docs', 'index.html'))
    })
}

папка docs находится в корне проекта.

путь /

const env = process.env.NODE_ENV
module.exports = app => {
    app.get('/', (req, res) =>{
        res.send({
            version: '1.0.0',
            status: 'API on-line',
            environment: env
        })
    })
}

Как мне ввести localhost:4000 и загрузить статус JSON из API, а не загрузить /docs?

1 Ответ

0 голосов
/ 14 января 2019

Ответ возвращается к вашему статическому маршруту.

app.use(express.static(path.join(__dirname, '../../../docs')))

Добавить дополнительный маршрут для '/'

app.get('/', (req, res) => {
})

Убедитесь, что этот маршрут определен ДО вашей app.use(express.static линии

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...