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

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

Request
אוספים (Collections)תכונות (Properties)שיטות (Methods)
QueryStringTotalBytesBinaryRead
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)
להלן רשימה חלקית:

NameValue 
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_ADDR66.70.10.208 כתובת השרת אליו הגיעה הבקשה
LOGON_USER שם המשתמש של הלקוח ב-Win NT אם יש לו
PATH_INFO/robroy/e.asp הדף אותו ביקש הלקוח
PATH_TRANSLATED\genfs2www24robroye.asp התירגום של המסלול הפיזי אותו ביקש המשתמש למסלול הוירטואלי
QUERY_STRING המידע שנשלח אתל הדף בשיטת ה-GET
REMOTE_ADDR213.8.226.74 כתובת ה-IP של שולח הבקשה
REMOTE_HOST213.8.226.74 השם, אם ישנו של שולח הבקשה
REMOTE_USER  
REQUEST_METHODGET השטיטה בה הגיעה הבקה (get, post)
SCRIPT_NAME/robroy/e.asp המסלול הוירטואלי לסקריפט שמתבצע כעת
SERVER_NAMEwww24.brinkster.com שם השרת, DNS, או IP של השרת
SERVER_PORT80 ה-PORT אליו נשלחה הבקשה
SERVER_PORT_SECUREמחזיר 1 אם ה-PORT מאובטח, 0 אם לא
SERVER_PROTOCOLHTTP/1.0 שם הפרוטוקול
SERVER_SOFTWAREMicrosoft-IIS/5.0 התוכנה המותקנת על השרת
URL/robroy/e.asp URL
HTTP_ACCEPT_ LANGUAGEשפת הלקוח 
HTTP_HOSTwww24.brinkster.com  
HTTP_REFERERhttp://www.brinkster.com/ FileManager.asp?nf= הלינק ממנו הגיע הלקוח אל הדף
HTTP_USER_AGENTMozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt; Zahav Local 5) סוג הדפדפן של הלקוח



דוגמא

תגיות: , , ,

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