QUICK REFERENCE

Home

Section 01
Lesson 01
Lesson 02
Lesson 03
Lesson 04
Lesson 05

Section 02
Lesson 06
Lesson 07
Lesson 08
Lesson 09

Section 03
Lesson 10
Lesson 11
Lesson 12
Lesson 13

Section 04
Lesson 14
Lesson 15

Section 05
Lesson 16
Lesson 17
Lesson 18
Lesson 19
Lesson 20

The Response Properties

List of Properties:

Below is a table of Response Properties along with examples and explanations.

Response Properties
BufferResponse.Buffer = true
Allows for the buffering of output
CacheControlResponse.CacheControl="Public"
Sets Cache to "Public" or "Private"
CharSetResponse.CharSet="windows-1252"
Sets the ISO character set
ContentTypeResponse.ContentType="text/HTML"
Specifies the output mime type (text/html, text/plain, GIF, JPG)
ExpiresResponse.Expires=60
Sets page expiration in minutes
ExpiresAbsoluteResponse.ExpiresAbsolute=#January 31, 2003 13:00:00#
Sets time certain for page to expire
IsClientConnectedif (Response.IsClientConnected==true) { }
Determines if client is still connected
PICS((See Explanation))
Platform for Internet Content Selection
StatusResponse.Status="401 Unauthorized"
Sets Page Status

You are not required to set, alter, or utilize a single Response Property if you don't want to. Having said that, they can be handy once in while. I've demonstrated all but two Properties in the script below.

By the way, set your properties BEFORE you begin output to the client.

Get Started:

Below is the ASP script for Lesson 07.

<%@LANGUAGE="JavaScript"%>
<%
Response.Buffer=true
Response.CacheControl="Private" 
Response.CharSet="windows-1252"
Response.ContentType="text/HTML"
Response.Expires=-1
Response.Status="200 OK"
%>
<HTML>
<BODY>
<%
if (Response.IsClientConnected==true)
	{
	Response.Write("The client is connected.<BR>")
	}
else
	{
	Response.End()
	}
%>
<TABLE BORDER="2">
<TR>
<%
for (x=1;x<=200;x++)
	{
	Response.Write("<TD>" + x + " </TD>\r")
	if (x%10==0)
		{
		Response.Clear()
		}
	if (x%4==0)
		{
		Response.Write("</TR></TABLE>\r")
		Response.Write("<TABLE BORDER=\"2\">")
		Response.Write("\r<TR>")
		Response.Flush()
		}
	}
%>
</TR></TABLE>
</BODY>
</HTML>

Click Here to run the script in a new window. After you click onto the link, really study the numbers. See if you notice anything weird about the page, like missing numbers.

Response.Buffer:

Let's take the Properties in order of appearance in our script. Response.Buffer allows us to control the output via Response.Flush() and Response.Clear(). If you haven't already, click onto the link to run the script. You'll get a strange output with some of the numbers missing. The missing numbers are thanks to Response.Clear(). You might notice that Response.Flush() slows down the server TREMENDOUSLY. Don't use this method without a reason.

Response.CacheControl:

CacheControl gives you the power to authorize proxy servers to keep your page in cache. (That would be the "Public" setting.) Likewise, it allows you to disallow proxy servers from caching your page. (That would be the "Private" setting). The default is "Private."

Response.CharSet:

CharSet allows you to specify the character set, for example: "ISO 8859-1".

Response.ContentType:

ContentType allows you to indicate the mime type of the output. For example there is text/plain and text/html. There is also GIF and JPEG.

Response.Expires:

Expires allows you set an expiration time for the page. By setting the Expires property to -1, you are saying the page expired one minute before it was delivered. The browser will (hopefully) not store it in cache, but rather make a separate request to the server before re-displaying the page.

Response.Status:

If tomorrow Congress were to pass a law forbidding the use of Response.Status, I think life would go on. If it makes you happy, use it.

Response.IsClientConnected:

IsClientConnected does exactly what it says. It returns a Boolean value that you can use in an "if" statement.

Response.PICS:

PICS stands for Platform for Internet Content Selection. It allows pages to be rated for the presence of violence, sexuality, language and nudity. There are services on the internet to rate your site. I've never used one. I found a sample PICS string on the internet and I converted to JavaScript.

Response.PICS("(PICS-1.1 <http://www.rsac.org/ratingv01.html> labels on \"1997.01.05T08:15-0500\" until \"1999.12.31T23:59-0000\" ratings (v 0 s 0 l 0 n 0))")

It's a long string and your browser may have wrapped the text down to a second line. If that's the case, then you have to pretend that the entire PICS string is on one line.

Response.ExpiresAbsolute:

I did not demonstrate ExpiresAbsolute in the script because I already used Response.Expires. ExpiresAbsolute does exactly the same thing as Expires, except it uses a date and time certain. (I couldn't see using both in the same script.) The only thing I would point out is the pound signs (#) at the beginning and and of the date.

What's Next:

We still have not covered the only "Collection" in the Response Object. It is the Cookies collection. But I want to do Response.Cookies side by side with Request.Cookies. So, Request is our next quest, and that is Lesson 08.

Next up.... lesson08.asp

Google
 
Web aspjavascript.com

Copyright James Clark 2005