javascript - nodejs統(tǒng)計對應(yīng)ip地址的對某個接口的請求次數(shù)
問題描述
exports.prodform=function (req, res) { let phone=req.body.phone; let province=req.body.province; let city=req.body.city; let district=req.body.district; let detailaddress=req.body.detailaddress; let data= ' 手機號碼: '+phone+' 地址: '+province+city+district+detailaddress+’rn’; let json={'success':true, } fs.writeFile('訂單.txt',data,{flag: ’a’},function(err,result) {if(err) throw err;console.log(’成功’); }) res.json(json);}對于上面這個接口,我如何統(tǒng)計不同ip地址對其的訪問次數(shù)呢?
問題解答
回答1:定義一個全局變量例如 ipList = {};
在exports.prodform里面加入下面的代碼:let ip = req.headers[’x-forwarded-for’] || req.connection.remoteAddress;if(!!ipList[ip]){ ipList[ip] = ipList[ip]+1;}else{ ipList[ip] = 1;}
或者使用redis吧
回答2:var ip = req.headers[’x-forwarded-for’] || req.connection.remoteAddress || req.socket.remoteAddress || req.connection.socket.remoteAddress;
拿到ip了,寫個方法計數(shù)不就好了?
相關(guān)文章:
1. docker網(wǎng)絡(luò)端口映射,沒有方便點的操作方法么?2. css - chrome下a標簽嵌套img 顯示會多個小箭頭?3. vim - docker中新的ubuntu12.04鏡像,運行vi提示,找不到命名.4. javascript - 網(wǎng)頁打印頁另存為pdf的代碼一個問題5. java中返回一個對象,和輸出對像的值,意義在哪兒6. mysql - 在不允許改動數(shù)據(jù)表的情況下,如何優(yōu)化以varchar格式存儲的時間的比較?7. css3 - 純css實現(xiàn)點擊特效8. javascript - 關(guān)于apply()與call()的問題9. javascript - 有適合開發(fā)手機端Html5網(wǎng)頁小游戲的前端框架嗎?10. docker start -a dockername 老是卡住,什么情況?
