trailing-slash

    2.0.1 • Public • Published

    trailing-slash

    Add or remove trailing slashes, and redirect.

    Build Status npm install

    trailing-slash allows you to wrap a http.Server handler function, and redirect when trailing slashes don't meet your expectations.

    Example

    var trailingSlash = require('trailing-slash')
    var http = require('http')
    
    var trailing = trailingSlash({slash: true}, handler)
    var server = http.createServer(trailing)
    
    server.listen(8080)
    
    function handler (req, res) {
      // any calls reaching here will have a trailing slash
      console.log(req.url) // '/post/some-title/'
    }

    API

    • trailingSlash([options] [, next]) - Create a new handler, which returns a function. Accepts the following parameters:
      • options object: containing any of the following properties:
        • slash boolean (default: true): when true a URL will be redirected to contain a slash; when false, it will be redirected to omit one.
        • status number (default: 302): the URL to be used for redirect, which can be either 301 (permanent redirect) or 302 (temporary redirect)
      • next function: called if the slashes match expectations, and a redirect is not necessary. When not provided, the returned function acts in a Connect-like middleware compatibility mode, where it expects the last parameter to be a next to be called upon pass.

    Returns a function with the following signature:

    Middleware

    When next is not specified, trailing-slash operates in a Connect/Express-compatible mode, where it can be used as middleware:

    var trailingSlash = require('trailing-slash')
    var express = require('express')
    
    var app = express()
    
    app.use(trailingSlash({slash: true}))
    
    app.listen(8080)

    License

    MIT. See LICENSE for details.

    Install

    npm i trailing-slash

    DownloadsWeekly Downloads

    211

    Version

    2.0.1

    License

    MIT

    Unpacked Size

    11.4 kB

    Total Files

    7

    Last publish

    Collaborators

    • fardog