2011-12-19 67 views
-1

我想爲我的每個網站用戶生成唯一的編號。 如何使用JavaScript實現類似的效果?如何爲使用javascript訪問網站的用戶生成唯一編號?

P.S:我也希望這個唯一的編號有關於用戶的信息,例如IP或與IP連接的東西。 我可以使用JavaScript獲得用戶IP嗎?如何?

+0

使用JavaScript獲取用戶的IP http://stackoverflow.com/questions/102605/can-i-lookup-the- ip-address-of-a-hostname-from-javascript – kjy112 2011-12-19 16:44:33

+0

但IP對於所有用戶來說並不是唯一的。 – pooya 2011-12-19 16:45:47

+0

我建議生成一個數字後端,然後使用cookie將其存儲在客戶端 - 這樣您可以看到用戶是否曾訪問過 – ManseUK 2011-12-19 16:54:45

回答

2

爲每個站點用戶生成一個有保證的唯一編號不能純粹在瀏覽器中完成。唯一保證每個網站用戶唯一編號的方法是在服務器上生成唯一編號並將其提供給瀏覽器(無論是在原始頁面還是通過ajax調用或通過post/get)。

如果您希望統計上不可能是不是100%保證的相同數字,那麼您可以使用時間數加上隨機數或非常非常長的隨機數,並且統計上不可能是相同的號碼,但不是100%保證是唯一號碼。

我沒有辦法知道從純粹的客戶端JavaScript獲取IP地址而不詢問服務器,即使可以,也是因爲代理,NAT,防火牆等等...... IP號碼並不保證對於給定的用戶是唯一的或不變的。例如,我家中的所有用戶都共享相同的傳出IP地址。

0

評價使用Javascript IP遠程地址,請訪問:

http://nanoagent.blogspot.com/2006/09/how-to-find-evaluate-remoteaddrclients.html中檢索IP地址。

對於你來說,最好的方法是使用PHP腳本生成號碼並用服務器端的隨機數保存信息。

如果有關IP的信息可以由用戶自己讀取,只需將其存儲在cookie中即可。但是,我不明白爲什麼有些人會這樣做..

1

您可以爲每個用戶生成GUID/UUID - 重複項的「機會」很小,但不能保證「每個」用戶都是唯一的,但是它應該工作正常。還有其他的JS隨機數的算法,使這個小小的,好一點...

Create GUID/UUID in JavaScript?

+0

以下是更好的隨機數引用的鏈接: http://baagoe.com/ EN/RandomMusings/JavaScript的/ – Caseman 2011-12-22 21:44:38

相關問題