所以我试图用http密码保护我的node.js应用程序。我看到很多人也需要帮助,并尝试了多种方法。但现在我被困住了。密码正常工作,但登录提示再次弹出,一旦您登录到上一个。我无法完全访问我的应用程序。
我的部分看起来是这样的:
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 + "!");
});我可以访问/test网站没有问题,它向我显示“你好,从快递- insertUsernameHere!”
但它不能用我的应用程序。是因为我的express.static吗?我不太擅长javascript/node.js,而且还在学习。
(很抱歉,如果我的英语让任何人不高兴,我知道这并不完美。)
发布于 2019-01-17 14:21:49
您可能在app.use(auth.connect(basic));指定静态文件之后定义了。
这就是你的静态文件没有受到保护的原因。
确保在设置静态文件的使用之前设置授权:
app.use(preAuth.connect(basic));
app.use(express.static(path.join(__dirname, 'public')));https://stackoverflow.com/questions/39858965
复制相似问题