我的用户名是gbrouelette
DOS窗口
D:>echo %username%
gbrouelette
我有一个简单的ASP页面,检查WScript的内容。网络<%@ Language=VBScript %>
<% Response.Buffer = True %>
<html>
<head>
<title>Name Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<base target="mainFrame">
<link rel="stylesheet" type="text/css" name="style1" href="../include/style1.css">
</head>
<body leftmargin=10>
<%
Response.Write("Session.SessionID is " & Session.SessionID & "<br>")
Dim objNet
Set objNet = Server.CreateObject("WScript.NetWork")
Response.Write("WScript.NetWork.UserName is " + objNet.UserName + "<br>")
Response.Write("WScript.NetWork.UserDomain is " + objNet.UserDomain + "<br>")
Response.Write("WScript.NetWork.ComputerName is " + objNet.ComputerName + "<p>")
%>
</body>
</html>
我把这个页面命名为"nametest.asp"
当我在Firefox上运行它时,我得到这样的输出:
Session.SessionID is 851656495
WScript.NetWork.UserName is gbrouelette
WScript.NetWork.UserDomain is ISOOA1
WScript.NetWork.ComputerName is FCSSAPPP01
注意用户名是正确的。然而,当我在IE8上运行它时,我得到这个
Session.SessionID is 851656496
WScript.NetWork.UserName is mktappcss
WScript.NetWork.UserDomain is ISOOA1
WScript.NetWork.ComputerName is FCSSAPPP01
在Chrome中我也得到这个:
Session.SessionID is 851656296
WScript.NetWork.UserName is mktappcss
WScript.NetWork.UserDomain is ISOOA1
WScript.NetWork.ComputerName is FCSSAPPP01
另外,我注意到ComputerName是iis运行的机器的名称。我的计算机是远程计算机的虚拟桌面
DOS窗口
D:>echo %computername%
VCSS-DEV1
运行iis的服务器为FCSSAPPP01
。WScript.NetWork.UserName
怎么可能给我一个不正确的用户名?
在我看来,这与浏览器无关,因为asp是在web服务器上执行的。因此,wscript.network对象也在web服务器上创建,并将为您提供执行iis的用户的用户名。以及网络服务器的计算机名和网络服务器的域名等。
当我执行你的脚本时,我总是得到执行iis的用户的用户名(默认IUSR可以在iis设置中更改为任何Windows用户)。