מדריך ASP – האובייקט Request

האובייקט Request מכיל את כל המידע על בקשת המשתמש מקובץ ה-ASP.
נתונים אלו יכולים להיות פרמטרים שנשלחו בשורת הכתובת של הדפדפן, שדות טופס שנשלחו לדף, עוגיות שנשתלו במחשב הגולש או אינפורמציה כללית על הגולש והשרת.

Request
אוספים (Collections) תכונות (Properties) שיטות (Methods)
QueryString TotalBytes BinaryRead
Form    
ServerVariables    
Cookies (נדון בפרק נפרד)    
ClientCertificate    

Request.QueryString ו-Request.Form


היתרון הגדול של ASP הוא העובדה שהוא מאפשר לנו ליצור דפי אינטרנט “מותאמים אישית” לכל לקוח ולבצע פעולות מסויימות, בהתאם למידע שהוא מעביר לנו.
קיימות שתי דרכים בהן הדפדפן מעביר את בקשת המשתמש:

שיטת ה-POST:

• באמצעות התג

.

שיטת ה-GET:
• באמצעות התג .
• באמצעות שרשור לכתובת: http://www.site.co.il/page.asp?name=moshe&age=16.

האוספים Request.Form ו-Request.QueryString הם אלו שמאפשרים לנו גישה לנתונים שנשלחו ע”י הלקוח.

את הערכים הנשלחים בשיטת ה-POST, אנו מקבלים באמצעות Request.Form.
הטופס ששולח את הערכים:


    

Please enter your name and email


Name:
Email:
 

קובץ ה-ASP:

VBScriptJScript

		
		
			Request.Form Example 
		
		
			

Your name is: <%= Request.Form("name")%>

Your email is: <%= Request.Form("email")%>


	<%@ Language=JScript%>
	
	
		Request.Form Example 
	
	
		

Your name is: <%= Request.Form("name")()%>

Your email is: <%= Request.Form("email")()%>

את הערכים הנשלחים בשיטת ה-GET, אנו מקבלים באמצעות Request.QueryString
בדוגמא http://www.site.co.il/page.asp?name=moshe&age=16, הערכים שנשלחו הם: name=moshe ו-age=16

קובץ ה-ASP:

VBScriptJScript

	
	
		Request.Form Example 
	
	
		

Your name is: <%= Request.QueryString("name")%>

Your email is: <%= Request.QueryString("age")%>


	<%@ Language=JScript%>
	
	
		Request.Form Example 
	

	
		

Your name is: <%= Request.QueryString("name")()%>

Your email is: <%= Request.QueryString("age")()%>

הערה ניתן לפנות לפריט באוספים של האובייקט Request ע” הקריאה:

VBScriptJScript

	<%= Request("ItemName")%>
	


	<%= Request("ItemName")()%> 
	

במקרה כזה, השרת יחפש פריט מתאים בכל האוספים, בסדר הבא:

1. QueryString
2. Form
3. Cookies
4. ClientCertificate
5. ServerVariables

דוגמאות:
מעבר על כל אוסף Request.Form והצגת הערכים
שליחת מידע נוסף באמצעות קישור
קבלת מידע מתיבות סימון (checkboxes)
לוגין פשוט

Request.TotalBytes


מציין את מספר הבתים אשר נשלחו ע”י הלקוח בגוף הבקשה. מאפיין זה הוא לקריאה בלבד.

VBScriptJScript

	<%
		Dim bytecount
		bytecount = Request.TotalBytes
	%>
	


	<%
		var bytecount = Request.TotalBytes()
	%> 
	

Request.BinaryRead


מאפשר גישה למידע הגולמי אשר מועבר ע”י הלקוח, בפורמט בינארי.

Request.ClientCertificate


בשימוש באתרים מאובטחים. מכיל מידע על ההרשאות/אישורים של הלקוח.
ClientCertificate הוא אוסף שדות האישור/רישוי (בסטנדרט X.509 ). אם הדפדפן
משתמש בפרוטוקול SSL3.0/PCT1 ( כלומר, ה-URL מתחיל ב-https:// במקום http://) כדי להתחבר לשרת,
והשרת מבקש אישורים, אוסף זה השלח אליו, אם לא, האוסף נותר ריק.

Request.ServerVariables

מכילים מידע על הלקוח והשרת. הפנייה נעשית באמצעות:
Request.ServerVariables(VariableName)
להלן רשימה חלקית:

Name Value  
ALL_HTTP HTTP_ACCEPT:*/*

HTTP_ACCEPT_LANGUAGE:he,es-ar;q=0.5
HTTP_CONNECTION:close
HTTP_HOST:www24.brinkster.com
HTTP_REFERER: http://www.brinkster.com/FileManager.asp?nf=
HTTP_USER_AGENT: Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt; Zahav Local 5)
HTTP_COOKIE: BrinksterServer=4; User=1;

 
כל ה-HTTP headers שנשלחו ע”י הלקוח
ALL_RAW
Accept: */*
Accept-Language: he,es-ar;q=0.5
Connection: close
Host: www24.brinkster.com
Referer: http://www.brinkster.com/FileManager.asp?nf=

User-Agent: Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt; Zahav Local 5)
Cookie: BrinksterServer=4; User=1;

 

כל ה-HTTP headers שנשלחו ע”י הלקוח, בצורתם הגולמית (ללא parsing)
APPL_MD_PATH /LM/w3svc/14/ROOT   
APPL_PHYSICAL_PATH \genfs2www24  המסלול הפיזי בו הקובץ יושב
AUTH_PASSWORD   הערך שהוקלד בתיבת הכנסת סיסמא, אם הקובץ ביקש סיסמא
AUTH_TYPE   שיטת האימות בה משתמש השרת כדי לאבטח גישה לסקריפטים מאובטחים
AUTH_USER   ה-username המאומת, בצורתו הגולמית
CONTENT_LENGTH אורכו בבתים של המידע שנשלח ע”י הלקוח
LOCAL_ADDR 66.70.10.208  כתובת השרת אליו הגיעה הבקשה
LOGON_USER   שם המשתמש של הלקוח ב-Win NT אם יש לו
PATH_INFO /robroy/e.asp  הדף אותו ביקש הלקוח
PATH_TRANSLATED \genfs2www24robroye.asp  התירגום של המסלול הפיזי אותו ביקש המשתמש למסלול הוירטואלי
QUERY_STRING   המידע שנשלח אתל הדף בשיטת ה-GET
REMOTE_ADDR 213.8.226.74  כתובת ה-IP של שולח הבקשה
REMOTE_HOST 213.8.226.74  השם, אם ישנו של שולח הבקשה
REMOTE_USER    
REQUEST_METHOD GET  השטיטה בה הגיעה הבקה (get, post)
SCRIPT_NAME /robroy/e.asp  המסלול הוירטואלי לסקריפט שמתבצע כעת
SERVER_NAME www24.brinkster.com  שם השרת, DNS, או IP של השרת
SERVER_PORT 80  ה-PORT אליו נשלחה הבקשה
SERVER_PORT_SECURE מחזיר 1 אם ה-PORT מאובטח, 0 אם לא
SERVER_PROTOCOL HTTP/1.0  שם הפרוטוקול
SERVER_SOFTWARE Microsoft-IIS/5.0  התוכנה המותקנת על השרת
URL /robroy/e.asp  URL
HTTP_ACCEPT_ LANGUAGE שפת הלקוח  
HTTP_HOST www24.brinkster.com   
HTTP_REFERER http://www.brinkster.com/ FileManager.asp?nf=  הלינק ממנו הגיע הלקוח אל הדף
HTTP_USER_AGENT Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt; Zahav Local 5)  סוג הדפדפן של הלקוח



דוגמא

תגיות: , , , ,

entry

סטודיו לבניית אתרים שהוקם בינואר 2005

תגובות בפייסבוק