OK,顾名思义,既然Response是server相应client的请求,那么Request就是server从client取其相关信息了。
Request对象一共有5个集合,一个属性,一个方法,通常使用更多的是集合。下面就列出这5个集合。
另,集合是存储字符串、数字、对象和其他值的地方。除了在存储或取出项目时集合会自动扩展与搜索外,集合与数组非常相近。与数组不同的是,集合被修改后,项目的位置将会移动。可以通过集合中项目的名称、索引或者通过在集合的所有项目中遍历访问项目。
ClientCertificate--Request.ClientCertificate("key[filed]")客户端专门用于ssl的安全信息
Cookies--Request.Cookies("cookiename")客户端保存的cookie的值
Form--Request.Form("formname") 客户端通过html的form所发送的数值
QueryString--Request.QueryString("keyname") 添加到url之后的名字/值对
ServerVariables--Request.ServerVariables("veriablename") 在html头域的值
下面一个一个的看一下。
Form在前面的章节中已经有例子,现在看一下QueryString的例子。
<%@ language=javascript %>
<html>
<head>
<title>this is a test of querystring</title>
</head>
<body>
<form action="fortest11.asp" method=post>
<strong>input something as QueryString</strong><br>
<input type=text name=querystringVar><br>
<input type=submit value=submit>
</form>
</body>
</html>
fortest11.asp
<%@ language=javascript %>
<%
var querystringVar=new String(Request.Form("querystringVar"))
%>
<html>
<strong>the quarystring is:</strong> <% =querystringVar%><br>
<a href="fortest11.asp?QueryString=<%=querystringVar%>">click here</a>
to link to fortest11.asp?QueryString=<% =querystringVar%>
</html>
有两种方式来使用QueryString,第一是通过get从html的form中得到产生的QueryString串;或者直接手动添加一个QueryString并把他添加到url的最后,如上例。某些浏览器不支持自动转化为Unicode码,需要添加一个转化,就是escape()方法。
var querystringVar=new String(Request.Form("querystringVar"))
querystringVar=escape(querystringVar)
Request.Form和Request.QueryString都可以用简写方式,不过不推荐:Request("formName")Request("queryStringName")
接下来是ServerVariables。
ServerVariables表示client端发给服务器端的html 头域中的信息,有很多,如下所列:
引用 http://blog.ccw.com.cn/trackback.jsp?postID=8835
Syntax
Request.ServerVariables (server_variable) |
Parameter | Description |
---|---|
server_variable | Required. The name of the server variable to retrieve |
Server Variables
Variable | Description |
---|---|
ALL_HTTP | Returns all HTTP headers sent by the client. Always prefixed with HTTP_ and capitalized |
ALL_RAW | Returns all headers in raw form |
APPL_MD_PATH | Returns the meta base path for the application for the ISAPI DLL |
APPL_PHYSICAL_PATH | Returns the physical path corresponding to the meta base path |
AUTH_PASSWORD | Returns the value entered in the client's authentication dialog |
AUTH_TYPE | The authentication method that the server uses to validate users |
AUTH_USER | Returns the raw authenticated user name |
CERT_COOKIE | Returns the unique ID for client certificate as a string |
CERT_FLAGS | bit0 is set to 1 if the client certificate is present and bit1 is set to 1 if the cCertification authority of the client certificate is not valid |
CERT_ISSUER | Returns the issuer field of the client certificate |
CERT_KEYSIZE | Returns the number of bits in Secure Sockets Layer connection key size |
CERT_SECRETKEYSIZE | Returns the number of bits in server certificate private key |
CERT_SERIALNUMBER | Returns the serial number field of the client certificate |
CERT_SERVER_ISSUER | Returns the issuer field of the server certificate |
CERT_SERVER_SUBJECT | Returns the subject field of the server certificate |
CERT_SUBJECT | Returns the subject field of the client certificate |
CONTENT_LENGTH | Returns the length of the content as sent by the client |
CONTENT_TYPE | Returns the data type of the content |
GATEWAY_INTERFACE | Returns the revision of the CGI specification used by the server |
HTTP_<HeaderName> | Returns the value stored in the header HeaderName |
HTTP_ACCEPT | Returns the value of the Accept header |
HTTP_ACCEPT_LANGUAGE | Returns a string describing the language to use for displaying content |
HTTP_COOKIE | Returns the cookie string included with the request |
HTTP_REFERER | Returns a string containing the URL of the page that referred the request to the current page using an <a> tag. If the page is redirected, HTTP_REFERER is empty |
HTTP_USER_AGENT | Returns a string describing the browser that sent the request |
HTTPS | Returns ON if the request came in through secure channel or OFF if the request came in through a non-secure channel |
HTTPS_KEYSIZE | Returns the number of bits in Secure Sockets Layer connection key size |
HTTPS_SECRETKEYSIZE | Returns the number of bits in server certificate private key |
HTTPS_SERVER_ISSUER | Returns the issuer field of the server certificate |
HTTPS_SERVER_SUBJECT | Returns the subject field of the server certificate |
INSTANCE_ID | The ID for the IIS instance in text format |
INSTANCE_META_PATH | The meta base path for the instance of IIS that responds to the request |
LOCAL_ADDR | Returns the server address on which the request came in |
LOGON_USER | Returns the Windows account that the user is logged into |
PATH_INFO | Returns extra path information as given by the client |
PATH_TRANSLATED | A translated version of PATH_INFO that takes the path and performs any necessary virtual-to-physical mapping |
QUERY_STRING | Returns the query information stored in the string following the question mark (?) in the HTTP request |
REMOTE_ADDR | Returns the IP address of the remote host making the request |
REMOTE_HOST | Returns the name of the host making the request |
REMOTE_USER | Returns an unmapped user-name string sent in by the user |
REQUEST_METHOD | Returns the method used to make the request |
SCRIPT_NAME | Returns a virtual path to the script being executed |
SERVER_NAME | Returns the server's host name, DNS alias, or IP address as it would appear in self-referencing URLs |
SERVER_PORT | Returns the port number to which the request was sent |
SERVER_PORT_SECURE | Returns a string that contains 0 or 1. If the request is being handled on the secure port, it will be 1. Otherwise, it will be 0 |
SERVER_PROTOCOL | Returns the name and revision of the request information protocol |
SERVER_SOFTWARE | Returns the name and version of the server software that answers the request and runs the gateway |
URL | Returns the base portion of the URL |
<%@ language=javascript %>
<HTML>
<strong>ALL_RAW:</strong><br>
<p><% =Request.ServerVariables("ALL_RAW") %></p>
<strong>Remote host</strong><br>
<p><%=Request.ServerVariables("REMOTE_HOST")%>
</p>
</HTML>
Cookies还是用一节来学习吧。