带有快速登录提示的http-auth无休止地弹出

时间:2016-10-04 18:05:10

标签: node.js express http-auth

所以我尝试用http-auth密码保护我的node.js应用程序。 我看到很多人也需要帮助,并尝试过多种方法。但现在我被卡住了。密码工作正常,但登录到上一个密码后,登录提示会再次弹出。我无法完全访问自己的应用。

我的auth-part看起来像这样:

var preAuth = require('http-auth');
var basic = preAuth.basic({
    realm: "Private area",
    file: __dirname + "/htpasswd",
    //Type: "basic"
});


var server;
var app = express();
app.use(preAuth.connect(basic));

如果我添加

app.get('/test', function(req, res) {
    res.send("Hello from express - " + req.user + "!");
});

我可以访问/测试网站没有问题,它显示我"你好快递 - insertUsernameHere!"

但它不能使用我的应用程序。这是因为我的express.static吗?我对javascript / node.js并不是那么好,还在学习。

(对不起,如果我用英语打扰任何人,我知道这不完美)

1 个答案:

答案 0 :(得分:0)

您可能在之后定义了app.use(auth.connect(basic));,指定了静态文件。

这就是您的静态文件不受保护的原因。

确保在设置使用静态文件之前设置授权:

app.use(preAuth.connect(basic));
app.use(express.static(path.join(__dirname, 'public')));