Have ideas to improve npm?Join in the discussion! »

    connect-slashes
    DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/connect-slashes package

    1.4.0 • Public • Published

    connect-slashes

    Trailing slash redirect middleware for Connect and Express.js. Useful for creating canonical urls in your Node.js applications.

    Installation

    $ npm install connect-slashes
    

    Usage

    var connect = require("connect")
      , slashes = require("connect-slashes");
     
    connect() // or express()
      .use(connect.static())
      .use(slashes()) // must come after static middleware!
      .listen(3000);

    Alternatively, you can pass false as the first argument to .slashes() in order to remove trailing slashes instead of appending them:

    .use(slashes(false));

    Additional settings

    You can also pass a second argument with an options object. For example, if an application is behind a reverse proxy server that removes part of the URL (a base_path) before proxying to the application, then the base can be specified with an option:

    .use(slashes(true, { base: "/blog" })); // prepends a base url to the redirect

    By default, all redirects are using the 301 Moved Permanently header. You can change this behavior by passing in the optional code option:

    .use(slashes(true, { code: 302 })); // 302 Temporary redirects

    You can also set additional headers to the redirect response with the headers option:

    .use(slashes(true, { headers: { "Cache-Control": "public" } }));

    Notes

    1. Only GET, HEAD, and OPTIONS requests will be redirected (to avoid losing POST/PUT data)
    2. This middleware will append or remove a trailing slash to all request urls. This includes filenames (/app.css => /app.css/), so it may break your static files. Make sure to .use() this middleware only after the connect.static() middleware.

    LICENSE

    MIT

    Install

    npm i connect-slashes

    DownloadsWeekly Downloads

    33,695

    Version

    1.4.0

    License

    MIT

    Unpacked Size

    13.1 kB

    Total Files

    7

    Last publish

    Collaborators

    • avatar