Files
create-react-app/packages/react-dev-utils/redirectServedPathMiddleware.js
Andrew Luca 1cbc6f7db6 feat(react-scripts): allow PUBLIC_URL in develoment mode (#7259)
Co-authored-by: Eric Clemmons <eric@smarterspam.com>
Co-authored-by: Alex Guerra <alex@heyimalex.com>
Co-authored-by: Kelly <kelly.milligan@gmail.com>

Co-authored-by: Eric Clemmons <eric@smarterspam.com>
Co-authored-by: Alex Guerra <alex@heyimalex.com>
Co-authored-by: Kelly <kelly.milligan@gmail.com>
2020-02-02 12:55:26 +01:00

27 lines
741 B
JavaScript

/**
* Copyright (c) 2015-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
'use strict';
const path = require('path');
module.exports = function createRedirectServedPathMiddleware(servedPath) {
// remove end slash so user can land on `/test` instead of `/test/`
servedPath = servedPath.slice(0, -1);
return function redirectServedPathMiddleware(req, res, next) {
if (
servedPath === '' ||
req.url === servedPath ||
req.url.startsWith(servedPath)
) {
next();
} else {
const newPath = path.join(servedPath, req.path !== '/' ? req.path : '');
res.redirect(newPath);
}
};
};