Express добавляет конечный путь sla sh к root, который нарушает строгую маршрутизацию - PullRequest
1 голос
/ 28 января 2020

Я определяю свои express конечные точки, используя app.get или app.post

Это, похоже, работает, но для каталога root добавляется конечный sla sh, когда возвращается представление html .

Представление root становится недоступным, если включить строгую маршрутизацию в приложении.

const express = require('express')

const app = express()

//app.enable('strict routing')

// Returns static files from the public subfolder.
// e.g. localhost:3000/dir/public/views/desktop.html
app.use('/dir', express.static('public'))

// This adds a trailing slash to localhost:3000/dir
app.get('/dir', (req, res) => require('./api/root')(req, res))

// This doesn't change and returns view on localhost:3000/dir/view
app.get('/dir/view', (req, res) => require('./api/root')(req, res))

// This returns JSON.
app.get('/dir/api/get', (req, res) => require('./api/get')(req, res))

app.listen(3000)

Я протестировал express .router для маршрута root, но это не так либо не работает.

const router = express.Router({ strict: true })

router.get('', (req, res) => require('./api/root')(req, res))

app.use('/dir', router)

Это добавляет завершающий sla sh и возвращает представление html без опции strict: true, либо завершается с завершающим sla * sh.

...