2017-02-09 50 views
-1

我的網站具有以下功能:每個用戶都可以上傳圖片並與其他人分享。現在我想在顯示圖片瀏覽次數的圖片旁邊添加一些內容(就像我們可以在這裏看到每個問題觀看過多少次一樣)。 我這樣做: 每當一張圖片被渲染時,增加數據庫中的瀏覽次數。但問題在於,用戶可以一遍又一遍刷新頁面,這是不好的。我必須將訪問者的一些數據保存到我的數據庫,然後檢查他們之前是否查看過它。我應該從他們那裏保存哪些數據? IP?曲奇餅?什麼?如何知道我的帖子使用節點js查看了多少次?

注:我要保存應該是唯一的數據。例如,如果用戶使用他的電腦查看帖子,數據應該與他用iPhone查看的數據不同。換句話說,每個設備都應該發送唯一的數據。

我真的很感激,如果你能幫助我。

回答

0

我猜你只是要處理的頁面刷新,對不對?因爲用戶可能每隔10分鐘或每小時或每天查看圖像。而且,您可以將其作爲相應圖像的視圖。現在,擁有諸如ip或cookie之類的任何唯一標識機制將允許您只向圖像添加一次計數,或者您可以使用另一種機制來處理這種情況。

我只會建議你允許客戶端限制刷新頁面的情況下調用服務器。雖然沒有提供關於你正在使用在客戶端什麼信息,但你可以使用window.onbeforeunload$(window).unload(function() {});趕上頁面刷新事件,並限制在這種情況下,API調用。

+0

對不起,我並沒有完全得到你的意思。你說過使用window.onbeforeunload,但用戶可以過來,只需按ctrl + r 20次,並將瀏覽次數增加到20次。你會告訴我這個代碼嗎?我使用JavaScript,節點和快遞。 – Joseph

+0

我希望我的查看功能與stackoverflow查看功能一樣(例如,您可以看到此帖已經查看了9次)。 – Joseph

+0

該視圖在頁面刷新上增加了stackoverflow。 –

相關問題