2

我的网站托管在本地服务器上,并且该网站由多个本地用户访问,当我尝试使用 java 代码时,我希望在他们访问特定页面时获取客户端/用户访问此页面的 os 用户:

String currentUser=System.getProperty("user.name"); 

它获取服务器而不是客户端的操作系统用户名。

请告知如何做到这一点,谢谢。

4

3 回答 3

0
String userAgent = request.getHeader("User-Agent");

您可以从此网站 http://www.user-agents.org/获取所有用户代理值的完整列表

Javascript方式

var OSName="Unknown OS";
if (navigator.appVersion.indexOf("Win")!=-1) OSName="Windows";
if (navigator.appVersion.indexOf("Mac")!=-1) OSName="MacOS";
if (navigator.appVersion.indexOf("X11")!=-1) OSName="UNIX";
if (navigator.appVersion.indexOf("Linux")!=-1) OSName="Linux";

并将 OSName 变量发送回服务器。

于 2013-10-09T07:35:09.263 回答
0

创建由小程序组成的 jar,其中小程序可以通过System.getProperty("user.name") 在同一小程序中使用 write httpclient 获取当前用户名,它将当前用户名发送到服务器上的 servlet。

  1. 调用当前用户方法是applet

  2. 将用户名分配给 httpclient

  3. 使用 httpclient 将用户名发送到 servlet

您的程序提供服务器的用户名而不是客户端,这就是为什么您必须使用客户端技术(如驻留在客户端计算机中的小程序)的原因。

于 2013-10-09T07:43:11.397 回答
0

使用java方法request.getRemoteUser()就可以了。

于 2013-10-09T09:29:47.363 回答