从客户端获取唯一标识符ASP.Net c#

时间:2014-05-04 15:49:24

标签: c# asp.net

我可以从访问我网站的客户端获取一些像MAC地址这样的唯一密钥吗? 我试图将此ID存储在数据库中,以便客户端在访问该页面时无法再访问它。

3 个答案:

答案 0 :(得分:1)

您无法获取客户端的MAC地址

获取IP地址

string ipaddress;
ipaddress = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
if (ipaddress == "" || ipaddress == null)
    ipaddress = Request.ServerVariables["REMOTE_ADDR"];

http://www.aspsnippets.com/Articles/How-to-get-IP-Address-of-Visitors-Machine-in-ASP.Net.aspx

答案 1 :(得分:1)

要获取用户的IP地址,您可以使用其他人的建议。但是,除非直接连接到路由器,否则无法获取用户的MAC地址。

如果您想要唯一识别您的用户,您应该尝试通过IP,操作系统和其他一些特定数据的组合来识别它们。但是,这仍然不完全可靠。

如果您允许在您的网站上注册,那么您可以通过电子邮件地址识别用户。

StackOverflow上有一个问题似乎是同一件事:How do I uniquely identify computers visiting my web site?。那里的答案建议使用cookies。您可能需要查看以下文章:Beginner's Guide to ASP.NET Cookies

答案 2 :(得分:0)

每次新增一个随机十六进制数

string newID= Guid.NewGuid().ToString();