Nie można korzystać z podstawowego uwierzytelniania podczas obsługi plików statycznych za pomocą express

Korzystając z frameworka Express dla node.js, próbuję obsługiwać pliki statyczne zawarte w katalogu, jednocześnie umieszczając na nim podstawowe uwierzytelnianie. Gdy to zrobię, pojawia się monit o podanie nazwy użytkownika i hasła (zgodnie z oczekiwaniami), ale po prawidłowym wprowadzeniu ich otrzymuję 404. Jeśli usunę sprawdzanie uwierzytelnienia i podasz ten sam katalog, faktycznie otrzymam strony zawarte w nim.

Oto szybki serwer, który wymyśliłem jako dowód koncepcji:

var express = require('express');

var app = express();

var auth = express.basicAuth(function(user,pass) {
  return 'user' === user && 'pass' === pass;
});

app.use('/admin', auth, express.static(__dirname + '/admin'));
app.use('/adminNoAuth', express.static(__dirname + '/admin'));

app.listen(8082);

Kiedy trafięlocalhost:8082/admin Dostaję nazwę użytkownika / hasło, a następnie 404. Kiedy trafięlocalhost:8082/adminNoAuth to służy do strony.

Używam Express 3.4.7 i node.js 0.10.22.

questionAnswers(3)

yourAnswerToTheQuestion