{"_id":"deviate","_rev":"7-98a4fb9ac0a72ad223faf3325399c633","name":"deviate","description":"Redirecting middlware for express or node.js ","dist-tags":{"latest":"1.0.0"},"versions":{"0.0.0":{"name":"deviate","version":"0.0.0","description":"Redirecting middlware for express or node.js ","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"https://github.com/ForbesLindesay/deviate.git"},"keywords":["express","routing","template","redirect","expression"],"author":{"name":"ForbesLindesay"},"license":"MIT","dependencies":{"ert":"~1.0.0"},"readme":"<img src=\"http://i.imgur.com/g3GNbqw.png\" align=\"right\"/>\r\n# deviate\r\n\r\nRedirecting middlware for express or node.js\r\n\r\n- supports [ert](https://github.com/ForbesLindesay/ert) syntax\r\n- supports a function that takes `req` and returns the path\r\n- uses `res.redirect` if it's used with express\r\n- falls back to manually writing the header elsewhere\r\n\r\n## Usage\r\n\r\n```js\r\nvar deviate = require('deviate');\r\n\r\nvar express = require('express');\r\nvar app = express();\r\n\r\napp.get('/:number', deviate(301, '/post/:number'));\r\napp.get('/random', deviate(function (req) { return '/post/' + Math.random(); }));\r\n\r\napp.get('/page/:no/next', deviate('/page/[1 + :no]'));\r\napp.get('/page/:no/next', deviate('/page/[-1 + :no]'));\r\n\r\napp.listen(3000);\r\n```\r\n\r\n## API\r\n\r\n`deviate([status,] path)`\r\n\r\nDeviate takes an optional status (which defaults to 302) and a path or function.  It then returns a middleware function which takes `req` and `res` and redirects `res` to the path.\r\n\r\n## License\r\n\r\nMIT","readmeFilename":"README.md","_id":"deviate@0.0.0","dist":{"shasum":"255ea5d913794146a2b58f42531879c7ca7253dc","tarball":"https://registry.npmjs.org/deviate/-/deviate-0.0.0.tgz","integrity":"sha512-DoXCx2rq6L6ieQqW6KCYzxNBP40d9EL2uQhFELEFwlnsqH/6zN4+u6Mw6+EZNe/S4k6Ifol4kzLMon6XfNHX+w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGhTCVs6t2KEhEQ58KQEMoPO0ESG5Mdbq2Ao341ZlwERAiACwMQ9PAYuw+yROR3m5kyjJqGuftK0b3rfPUpK0/MutA=="}]},"_from":".","_npmVersion":"1.2.10","_npmUser":{"name":"forbeslindesay","email":"forbes@lindesay.co.uk"},"maintainers":[{"name":"forbeslindesay","email":"forbes@lindesay.co.uk"}]},"1.0.0":{"name":"deviate","version":"1.0.0","description":"Redirecting middlware for express or node.js ","scripts":{"test":"mocha -R spec"},"repository":{"type":"git","url":"https://github.com/ForbesLindesay/deviate.git"},"keywords":["express","routing","template","redirect","expression"],"author":{"name":"ForbesLindesay"},"license":"MIT","dependencies":{"ert":"~1.0"},"devDependencies":{"hyperquest":"~0","express":"~3","mocha":"~1"},"readme":"<img src=\"http://i.imgur.com/g3GNbqw.png\" align=\"right\"/>\r\n# deviate\r\n\r\nRedirecting middlware for express or node.js\r\n\r\n- supports [ert](https://github.com/ForbesLindesay/ert) syntax\r\n- supports a function that takes `req` and returns the path\r\n- uses `res.redirect` if it's used with express\r\n- falls back to manually writing the header elsewhere\r\n\r\n[![Build Status](https://travis-ci.org/ForbesLindesay/deviate.png?branch=master)](https://travis-ci.org/ForbesLindesay/deviate)\r\n[![Dependency Status](https://gemnasium.com/ForbesLindesay/deviate.png)](https://gemnasium.com/ForbesLindesay/deviate)\r\n\r\n## Usage\r\n\r\n```js\r\nvar deviate = require('deviate');\r\n\r\nvar express = require('express');\r\nvar app = express();\r\n\r\napp.get('/random', deviate(function (req) { return '/post/' + Math.random(); }));\r\n\r\napp.get('/page/:no/next', deviate('/page/[Number:no + 1]'));\r\napp.get('/page/:no/prev', deviate('/page/[Number:no - 1]'));\r\n\r\napp.get('/:number', deviate(301, '/post/:number'));\r\n\r\napp.listen(3000);\r\n```\r\n\r\n## API\r\n\r\n`deviate([status,] path)`\r\n\r\nDeviate takes an optional status (which defaults to 302) and a path or function.  It then returns a middleware function which takes `req` and `res` and redirects `res` to the path.\r\n\r\n## License\r\n\r\nMIT","readmeFilename":"README.md","_id":"deviate@1.0.0","dist":{"shasum":"fb3192b218ed6e01246c9d59fc8e07b937d727d0","tarball":"https://registry.npmjs.org/deviate/-/deviate-1.0.0.tgz","integrity":"sha512-032+1AsGBidLzLechdtmjuMudBDYI671ZcMAuuKfg2BvDluGlcMUmpebRakQDxWzgBkoaAHOQdp61vikrT6rSg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIERefhPwzg2L7B1oDY46z6rB4PhyZcxAyn125OnLVUT3AiBI0pDLDXpntgMlr+gSnp4mRHkU7aQncrmaVR0/v3zkLw=="}]},"_from":".","_npmVersion":"1.2.10","_npmUser":{"name":"forbeslindesay","email":"forbes@lindesay.co.uk"},"maintainers":[{"name":"forbeslindesay","email":"forbes@lindesay.co.uk"}]}},"readme":"<img src=\"http://i.imgur.com/g3GNbqw.png\" align=\"right\"/>\r\n# deviate\r\n\r\nRedirecting middlware for express or node.js\r\n\r\n- supports [ert](https://github.com/ForbesLindesay/ert) syntax\r\n- supports a function that takes `req` and returns the path\r\n- uses `res.redirect` if it's used with express\r\n- falls back to manually writing the header elsewhere\r\n\r\n## Usage\r\n\r\n```js\r\nvar deviate = require('deviate');\r\n\r\nvar express = require('express');\r\nvar app = express();\r\n\r\napp.get('/:number', deviate(301, '/post/:number'));\r\napp.get('/random', deviate(function (req) { return '/post/' + Math.random(); }));\r\n\r\napp.get('/page/:no/next', deviate('/page/[1 + :no]'));\r\napp.get('/page/:no/next', deviate('/page/[-1 + :no]'));\r\n\r\napp.listen(3000);\r\n```\r\n\r\n## API\r\n\r\n`deviate([status,] path)`\r\n\r\nDeviate takes an optional status (which defaults to 302) and a path or function.  It then returns a middleware function which takes `req` and `res` and redirects `res` to the path.\r\n\r\n## License\r\n\r\nMIT","maintainers":[{"name":"forbeslindesay","email":"forbes@lindesay.co.uk"}],"time":{"modified":"2022-06-15T02:22:47.592Z","created":"2013-04-25T19:34:08.488Z","0.0.0":"2013-04-25T19:34:12.280Z","1.0.0":"2013-04-25T19:57:28.132Z"},"author":{"name":"ForbesLindesay"},"repository":{"type":"git","url":"https://github.com/ForbesLindesay/deviate.git"}}