1
0
mirror of synced 2025-12-23 03:44:00 -05:00
Files
docs/middleware/next.js
James M. Greene 2dbae93c53 Try to prevent late/duplicate response errors (#20077)
* Ensure all Express 'next' calls include 'return's

* Add headersSent checks during archived versions flow

* Return a 404 earlier if archived resource fetch fails

* Short-circuit responses for archived stuff

* Be more careful about responding to and short-circuiting after search requests

* Fix tests
2021-06-28 19:31:54 +00:00

24 lines
575 B
JavaScript

const next = require('next')
const { NODE_ENV, FEATURE_NEXTJS } = process.env
const isDevelopment = NODE_ENV === 'development'
let nextHandleRequest
if (FEATURE_NEXTJS) {
const nextApp = next({ dev: isDevelopment })
nextHandleRequest = nextApp.getRequestHandler()
nextApp.prepare()
}
function renderPageWithNext (req, res, next) {
if (req.path.startsWith('/_next') && !req.path.startsWith('/_next/data')) {
return nextHandleRequest(req, res)
}
return next()
}
renderPageWithNext.nextHandleRequest = nextHandleRequest
module.exports = renderPageWithNext