我在閱讀RESTful Web Services,他們談論的第一章是利用HTTP已經服務的內容。HTTP簡單身份驗證與POST表單身份驗證
他們介紹了使用HTTP Basic Authentication
對del.icio.us
進行驗證的示例。
到目前爲止,我用NodeJS編寫的應用程序通過從user
和password
字段發送POST
請求來實現身份驗證。
你們是怎麼實現這個的?網頁是否通過http basic auth
實現身份驗證? 哪一個被推薦?
在此先感謝。
我在閱讀RESTful Web Services,他們談論的第一章是利用HTTP已經服務的內容。HTTP簡單身份驗證與POST表單身份驗證
他們介紹了使用HTTP Basic Authentication
對del.icio.us
進行驗證的示例。
到目前爲止,我用NodeJS編寫的應用程序通過從user
和password
字段發送POST
請求來實現身份驗證。
你們是怎麼實現這個的?網頁是否通過http basic auth
實現身份驗證? 哪一個被推薦?
在此先感謝。
您可能會發現Basic HTTP authentication in Node.JS?很有用,因爲它描述瞭如何在NodeJS中執行基本身份驗證。
至於它在Web服務中的使用,那麼......有很多方法來授權使用共享祕密(如API密鑰),cookies(如基本身份驗證)或添加到請求字符串的用戶憑證。所有人都有自己的優缺點。
對於我的大部分編碼,我依靠公鑰/私鑰對來確保客戶身份。
http-auth模塊應該做的工作
// Authentication module.
var auth = require('http-auth');
var basic = auth.basic({
realm: "Simon Area.",
file: __dirname + "/../data/users.htpasswd" // gevorg:gpass, Sarah:testpass ...
});
// Creating new HTTP server.
http.createServer(basic, function(req, res) {
res.end("Welcome to private area - " + req.user + "!");
}).listen(1337);
儘管這個鏈接可能回答這個問題,但最好在這裏包含答案的重要部分,並提供供參考的鏈接。如果鏈接頁面更改,則僅鏈接答案可能會失效。 - [來自評論](/ review/low-quality-posts/12110832) –
謝謝你,編輯。 – gevorg
形式登錄通常意味着有參與的cookie。但http auth的工作原理也是一樣的,每次請求都以幾乎明文的形式傳輸用戶/密碼。 –
,因此應在用戶端Web應用程序中使用基於表單的身份驗證以保留用戶登錄,並且從Web應用程序接受的Web服務可以實現http-simple-auth? – jviotti