Java应用程序托管在Linux服务器中。我们正在尝试访问尝试使用浏览器访问应用程序的用户的Windows用户名。
在jsp中,我们尝试使用以下代码行打印用户的用户名。
<% String user = System.getProperty("user.name");
out.println(user);
%>
但输出打印的是linux服务器的用户名,而不是windows用户的用户名。
答案 0 :(得分:1)
Oups,在客户端服务器应用程序中,您必须知道在服务器上运行的内容以及在客户端上运行的内容。
首先将JSP转换为java代码,编译并执行服务器端,并生成在客户端上显示的HTML。这就是为什么你得到运行服务器应用程序的用户的原因。您将需要一个applet(在浏览器中执行的Java应用程序客户端),或者您可以按照question的答案中的建议使用javascript:
@HttpContext.Current.User.Identity.Name