如何识别客户端的计算机?

时间:2015-01-06 08:39:41

标签: asp.net asp.net-mvc-4 dns

我在识别客户端的计算机数据时遇到问题。我正在开发一个应用程序,需要一些机器客户端目前正在使用的知识。我试过了

 System.Environment.MachineName;

以及

string hostName = Dns.GetHostName();
var add = Dns.GetHostAddresses(hostName);

,但它总是返回IIS正在处理的服务器计算机的数据。此外,我试图获得处理器和basebords id,但结果与前面的例子相同。

 ManagementObjectSearcher mos = new ManagementObjectSearcher("SELECT SerialNumber FROM Win32_BaseBoard");
        ManagementObjectCollection moc = mos.Get();
        foreach (ManagementObject mo in moc)
        {
            serial = mo["SerialNumber"].ToString();
        }

        ManagementObjectSearcher mbs = new ManagementObjectSearcher("Select * From Win32_processor");
        ManagementObjectCollection mbsList = mbs.Get();
        string id = "";
        foreach (ManagementObject mo in mbsList)
        {
            id = mo["ProcessorID"].ToString();
        }t

系统将在专用网络内使用(不公开使用)。

有没有办法以某种方式识别ASP.NET Web应用程序开发中的任何唯一客户端的计算机数据,或者.NET只是因为安全而拒绝识别客户端的计算机数据?

由于

1 个答案:

答案 0 :(得分:0)

由于代码在服务器上运行," System"是服务器。在ASP.NET中,您可以使用Request对象获取有关谁(客户端)请求的信息。试试这个:

Request.UserHostAddress

或者这个:

Request.UserHostName