req.user を設定したい場合は、コールバック関数にユーザー名を提供する必要があります (呼び出し元のコードのコンテキストに明らかにユーザー名が含まれている場合でも)。
これを行う代わりに(私が従った素晴らしいチュートリアルが言ったように):
var express = require('express');
var app = express();
// Authenticator
app.use(express.basicAuth(function(user, pass, callback) {
var result = (user === 'testUser' && pass === 'testPass');
callback(null /* error */, result);
}));
app.get('/home', function(req, res) {
res.send('Hello World');
});
app.listen(process.env.PORT || 8080);
関数を次のように変更する必要があります。
app.use(express.basicAuth(function(user, pass, callback) {
if (user === 'testUser' && pass === 'testPass') {
callback(null /* error */, user);
} else {
callback(null, null);
}
}));
そして、疑問に思っている人にとっては、はい、それは、名前が空の文字列であるユーザーを持つことができないことを意味します (そうでない場合、express によって false と解釈されます)。