維基: HTTP基本認證html
訪問須要HTTP Basic Authentication認證的資源的各類語言的實現git
使用node express和http-auth實現。github
$ npm install express --save $ npm install http-auth --save $ touch app.js $ touch users.htpasswd
目錄結構以下:express
app.js內容:npm
// Authentication module. var auth = require('http-auth'); var basic = auth.basic({ realm: "Simon Area.", file: __dirname + "/users.htpasswd" }); // Application setup. var express = require('express'); var app = express(); app.use(auth.connect(basic)); // Setup route. app.get('/', function(req, res) { res.send("Hello from express - " + req.user + "!"); }); app.get('/test', function(req, res) { res.send("Hi - " + req.user + "! This is the test page"); }); app.listen(3000, function () { console.log('Example app listening on port 3000!'); });
users.htpasswd內容:瀏覽器
letian:123
運行:app
$ node app.js
瀏覽器打開http://127.0.0.1:3000/
會提示輸入密碼,咱們看一下HTTP信息:ui
輸入密碼:spa
再次查看HTTP信息:
訪問http://127.0.0.1:3000/test
不須要輸入密碼了:
除非瀏覽器記住了密碼,重啓瀏覽器後要從新輸入密碼。