2016-07-28 7 views
0

Expressでは、 "/ something"を含むすべてのURLをベースパス "/:="にリダイレクトするにはどうすればよいですか?Expressを使用してパスをベース "/"パスにリダイレクト

  1. "/何か" へへ "/他"
  2. "/何か/他/再び" "/"
  3. "/他/何か" へ:たとえば、私は次のリダイレクトしたいです"/他/再び"
  4. 等...私はExpressであることを達成することができますどのよう

var express = require('express'); 
var router = express.Router(); 

router.get('/something/*', function(req, res) { 
    res.redirect('/'); 
}); 

module.exports = router; 

答えて

2

req.originalUrlあなたの元のパスを与え、それから、あなたはsomething一部を削除する必要があります。あなたが試すことができます:

router.get('/something/*', function(req, res) { 
    var newPath = req.originalUrl.split('something')[1] 
    res.redirect(newPath); 
}); 

をまたreq.pathを使用することができますが、それは動作しないかもしれないいくつかのscenariosがあります。

+1

req.pathもこの場合に便利です – semanser

関連する問題