你想要做的是一次只限制一個資源的訪問權限到一個IP地址。
由於所有請求都是從單個進程提供的,因此使用Node相當容易。
您可以在發出請求時將IP地址輸入到對象中,然後在新請求進入重複時檢查該對象。
如果您使用的是Express且您的模塊中有路由,則可以將IP連接對象置於路由模塊的頂層。
var connectedIPs = {};
exports.myDownloadRoute = function(request, response) {
var IP = request.connection.remoteAddress;
if(connectedIPs.IP) {
response.redirect("http://mysite.com/download_rules.html");
return;
}
connectedIPs.IP = true;
// pseudo send a file call, replace this with your code
send_a_file(function(err) {
// done sending or error, remove from connectedIPs
delete connectedIPs.IP;
});
}
如果用戶嘗試請求由IDM當前頁中,只有一個連接由接受的NodeJS,我需要將其限制到不同數量的用戶A和用戶B.如7或8的連接15 – 2013-04-29 07:44:41