3

http-proxy および express ミドルウェアを使用してプロキシを作成しました。ただし、プロキシしているアプリケーションに不可欠な PUT リクエストは転送されません。私は何を間違っていますか?

(プロキシ サーバーの目的は、プロキシの背後にあるアプリに認証を提供することです。これを行う別の方法があれば、教えていただければ幸いです。)

var proxy = new httpProxy.RoutingProxy();
var app = express();

app.configure(function() {
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');
app.engine('ejs', require('ejs-locals'));
app.use(express.logger());
app.use(express.cookieParser());
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(express.session({secret: 'rupert'}));
app.use(flash());
app.use(passport.initialize());
app.use(passport.session());
app.use(app.router);
app.use(function(req, res) {
proxy.proxyRequest(req, res, {
  host: 'localhost',
  port: 8080
});
});
app.use(express.static(__dirname + '/../../public'));
});

app.get('/login', function(req, res){
  res.render('login', { user: req.user, message: req.flash('error') });
});

app.post('/login', 
  passport.authenticate('local', { failureRedirect: '/login', failureFlash: true }),
  function(req, res) {
  res.redirect('/');
});

app.get('/logout', function(req, res){
  req.logout();
  res.redirect('/')
});

app.all('/*', function(req, res, next) {
  return next();
});

app.listen(3000,'localhost');
4

1 に答える 1