当讨论Request对象内容时,要研究的集合之一就是ServerVariables集合。
这个集合包含了两种值的结合体,一种是随同页面请求从客户端发送到服务器的HTTP报头中的值,另外一种是由服务器在接收到请求时本身所提供的值。 在ServerVariables集合中返回的值包含的Web服务器详细信息和当前页面的路径信息。在任何地方创建一个页面都可使用这些信息。
参数服务器环境变量
指定要检索的服务器环境变量名。可以使用下面列出的值。
[csharp] view plain copy Request.ServerVariables["SERVER_NAME"] '获取服务器IP Request.ServerVariables["HTTP_REFERER"] '获取访问来源页面 Request.ServerVariables["OS"] '获取操作系统 request.ServerVariables["APPL_PHYSICAL_PATH"] '获取IIS物理路径 Request.ServerVariables["SCRIPT_NAME"] '获取虚拟路径 Request.ServerVariables["NUMBER_OF_PROCESSORS"] '获取服务器CPU个数 Request.ServerVariables["SERVER_PORT"] '服务器处理请求的端口 Request.ServerVariables["Url"] 返回服务器地址 Request.ServerVariables["Path_Info"] 客户端提供的路径信息 Request.ServerVariables["Appl_Physical_Path"] 与应用程序元数据库路径相应的物理路径 Request.ServerVariables["Path_Translated"] 通过由虚拟至物理的映射后得到的路径 Request.ServerVariables["Script_Name"] 执行脚本的名称 Request.ServerVariables["Query_String"] 查询字符串内容 Request.ServerVariables["Http_Referer"] 请求的字符串内容 Request.ServerVariables["Server_Port"] 接受请求的服务器端口号 Request.ServerVariables["Remote_Addr"] 发出请求的远程主机的IP地址 Request.ServerVariables["Remote_Host"] 发出请求的远程主机名称 Request.ServerVariables["Local_Addr"] 返回接受请求的服务器地址 Request.ServerVariables["Http_Host"] 返回服务器地址 Request.ServerVariables["Server_Name"] 服务器的主机名、DNS地址或IP地址 Request.ServerVariables["Request_Method"] 提出请求的方法比如GET、HEAD、POST等等 Request.ServerVariables["Server_Port_Secure"] 如果接受请求的服务器端口为安全端口时,则为1,否则为0 Request.ServerVariables["Server_Protocol"] 服务器使用的协议的名称和版本 Request.ServerVariables["Server_Software"] 应答请求并运行网关的服务器软件的名称和版本 Request.ServerVariables["All_Http"] 客户端发送的所有HTTP标头,前缀HTTP_ Request.ServerVariables["All_Raw"] 客户端发送的所有HTTP标头,其结果和客户端发送时一样,没有前缀HTTP_ Request.ServerVariables["Appl_MD_Path"] 应用程序的元数据库路径 Request.ServerVariables["Content_Length"] 客户端发出内容的长度 Request.ServerVariables["Https"] 如果请求穿过安全通道(SSL),则返回ON如果请求来自非安全通道,则返回OFF Request.ServerVariables["Instance_ID"] IIS实例的ID号 Request.ServerVariables["Instance_Meta_Path"] 响应请求的IIS实例的元数据库路径 Request.ServerVariables["Http_Accept_Encoding"] 返回内容如:gzip,deflate Request.ServerVariables["Http_Accept_Language"] 返回内容如:en-us Request.ServerVariables["Http_Connection"] 返回内容:Keep-Alive Request.ServerVariables["Http_Cookie"] 返回内容:Cookie的值 Request.ServerVariables["Http_User_Agent"] 返回内容:Mozilla/4.0[compatible;MSIE6.0;WindowsNT5.1;SV1] Request.ServerVariables["Https_Keysize"] 安全套接字层连接关键字的位数,如128 Request.ServerVariables["Https_Secretkeysize"] 服务器验证私人关键字的位数如1024 Request.ServerVariables["Https_Server_Issuer"] 服务器证书的发行者字段 Request.ServerVariables["Https_Server_Subject"] 服务器证书的主题字段 Request.ServerVariables["Auth_Password"] 当使用基本验证模式时,客户在密码对话框中输入的密码 Request.ServerVariables["Auth_Type"] 是用户访问受保护的脚本时,服务器用於检验用户的验证方法 Request.ServerVariables["Auth_User"] 代证的用户名 Request.ServerVariables["Cert_Cookie"] 唯一的客户证书ID号 Request.ServerVariables["Cert_Flag"] 客户证书标志,如有客户端证书,则bit0为0如果客户端证书验证无效,bit1被设置为1 Request.ServerVariables["Cert_Issuer"] 用户证书中的发行者字段 Request.ServerVariables["Cert_Keysize"] 安全套接字层连接关键字的位数,如128 Request.ServerVariables["Cert_Secretkeysize"] 服务器验证私人关键字的位数如1024 Request.ServerVariables["Cert_Serialnumber"] 客户证书的序列号字段 Request.ServerVariables["Cert_Server_Issuer"] 服务器证书的发行者字段 Request.ServerVariables["Cert_Server_Subject"] 服务器证书的主题字段 Request.ServerVariables["Cert_Subject"] 客户端证书的主题字段 Request.ServerVariables["Content_Type"] 客户发送的form内容或HTTPPUT的数据类型写代码查看了一下:
ALL_HTTPHTTP_CONNECTION:Keep-AliveHTTP_ACCEPT:image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/msword, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, */*HTTP_ACCEPT_ENCODING:gzip, deflateHTTP_ACCEPT_LANGUAGE:zh-cnHTTP_COOKIE:Hm_lvt_08aef2b5cf5e50ed2c2d88c03acafc89=1342063478484; Hm_lpvt_08aef2b5cf5e50ed2c2d88c03acafc89=1342063478484HTTP_HOST:192.168.1.250:10HTTP_USER_AGENT:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E)ALL_RAWConnection: Keep-AliveAccept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/msword, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, */*Accept-Encoding: gzip, deflateAccept-Language: zh-cnCookie: Hm_lvt_08aef2b5cf5e50ed2c2d88c03acafc89=1342063478484; Hm_lpvt_08aef2b5cf5e50ed2c2d88c03acafc89=1342063478484Host: 192.168.1.250:10User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E)APPL_MD_PATH/LM/W3SVC/1317416294/RootAPPL_PHYSICAL_PATHE:\WebSites\SearchWeb\AUTH_TYPE AUTH_USER AUTH_PASSWORD LOGON_USER REMOTE_USER CERT_COOKIE CERT_FLAGS CERT_ISSUER CERT_KEYSIZE CERT_SECRETKEYSIZE CERT_SERIALNUMBER CERT_SERVER_ISSUER CERT_SERVER_SUBJECT CERT_SUBJECT CONTENT_LENGTH0CONTENT_TYPE GATEWAY_INTERFACECGI/1.1HTTPSoffHTTPS_KEYSIZE HTTPS_SECRETKEYSIZE HTTPS_SERVER_ISSUER HTTPS_SERVER_SUBJECT INSTANCE_ID1317416294INSTANCE_META_PATH/LM/W3SVC/1317416294LOCAL_ADDR192.168.1.250PATH_INFO/ServerVariablesTest.aspxPATH_TRANSLATEDE:\WebSites\SearchWeb\ServerVariablesTest.aspxQUERY_STRINGword=123&type=1REMOTE_ADDR192.168.1.117REMOTE_HOST192.168.1.117REMOTE_PORT6983REQUEST_METHODGETSCRIPT_NAME/ServerVariablesTest.aspxSERVER_NAME192.168.1.250SERVER_PORT10SERVER_PORT_SECURE0SERVER_PROTOCOLHTTP/1.1SERVER_SOFTWAREMicrosoft-IIS/6.0URL/ServerVariablesTest.aspxHTTP_CONNECTIONKeep-AliveHTTP_ACCEPTimage/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/msword, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, */*HTTP_ACCEPT_ENCODINGgzip, deflateHTTP_ACCEPT_LANGUAGEzh-cnHTTP_COOKIEHm_lvt_08aef2b5cf5e50ed2c2d88c03acafc89=1342063478484; Hm_lpvt_08aef2b5cf5e50ed2c2d88c03acafc89=1342063478484HTTP_HOST192.168.1.250:10HTTP_USER_AGENTMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E)简单代码实现:
[csharp] view plain copy for (int i = 0; i < Request.ServerVariables.Count; i++) { Request.ServerVariables.AllKeys[i]; Request.ServerVariables[i].ToString(); }转载于:https://www.cnblogs.com/LuckCode/p/5120577.html
相关资源:asp.net Request.ServerVariables[] 读解