strip_host.js 531 B

12345678910111213141516171819
  1. /**
  2. * Strip host middleware is responsible for stripping hostname from request path
  3. * This to handle requests that uses (normally over proxies) an absoluteURI as request path
  4. */
  5. var createStripHostMiddleware = function () {
  6. return function (request, response, next) {
  7. function stripHostFromUrl (url) {
  8. return url.replace(/^http[s]?:\/\/([a-z\-.:\d]+)\//, '/')
  9. }
  10. request.normalizedUrl = stripHostFromUrl(request.url) || request.url
  11. next()
  12. }
  13. }
  14. // PUBLIC API
  15. exports.create = createStripHostMiddleware