الرئيسية
سجل الزوار
القائمة البريدية
راسلنا
خريطة الموقع
جديد الصور
جديد البطاقات
جديد الصوتيات
المتواجدون الآن
تغذيات RSS
2012-08-14 06:00
الكائن Response- الجزء الثاني
سنكمل معاً في هذا الدرس باقي خواص ودوال الكائن Response. لنبدأ !!
الخاصية Expires:
الخاصية Buffer كانت تخص خادم الويب! بينما الخاصية Expires في تخص جهاز المستخدم وبالتحديد متصفح الويب لديه !
فمتصفح الويب لدى المستخدم يستخدم ذاكرة مؤقتة تدعى cache memory للاحتفاظ بصفحات الويب التي يزورها المستخدم. والخاصية Expires تحدد المدة التي سيحتفظ فيها المتصفح بهذه الصفحة ! وتكون هذه المدة بالدقائق.
فإذا طلب المستخدم صفحة الويب فإن المتصفح يبحث في هذه الذاكرة المؤقتة عن الصفحة المطلوبة فإذا وجدها فإنه يتأكد من مدة صلاحية عرض الصفحة من الذاكرة المؤقتة، فإذا لم تنقض هذه المدة فإنه يعرض الصفحة من الذاكرة بدلاً من إعادة معالجتها في خادم الويب ومن ثم إرسالها للمستخدم ! أما إذا انقضت المدة، فإن المتصفح يطلب الصفحة من الخادم لتتم معالجتها من جديد قبل إرسالها.
تستخدم هذه الخاصية كالتالي:
<%Response.Expires=20%>
* يجب استخدام هذه الخاصية في بداية ملف ASP وقبل أوامر HTML! و إلا فإن المستعرض سيعرض خطأ لديك !
* قد تكون هذه الخاصية مفيدة في عرض الصفحة بسرعة إذا استخدمت ولكنها قد تمنع المستخدم من مشاهدة التغييرات الجديدة التي قد تطرأ على الصفحة خصوصاً إذا كانت صفحة الويب تتغير باستمرار !
* إذا لم تكن تريد حفظ الصفحة في الذاكرة المؤقتة قم بتعيين القيمة 0 للدالة Expires.
* إذا لم تضع العبارة Respopnse.Expires في صفحتك فإن المستعرض سوف يطلب الصفحة من خادم الويب في المرة الأولى، ثم يعيد قراءتها من الذاكرة المؤقتة حتى يغلق المستخدم المتصفح .
* عند كتابة أكثر من عبارة Response.Expires وبقيم مختلفة فإن الذاكرة المؤقتة ستحتفظ بالصفحة لمدة مساوية للقيمة الأصغر في عبارات Response.Expires. أي القيمة رقم 5 في هذا المثال :
<%
Response.Expires=15
Response.Expires=20
Response.Expires=5
%>
~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
ماذا لو كنت تريد تخزين الصفحة حتى يوم معين وساعة محددة؟!
الخاصية ExpiresAbsolute:
تستطيع فعل ذلك بالخاصية ExpiresAbsolute التي تحدد اليوم والوقت الذي يجبر فيه خادم الويب المستعرض على الاحتفاظ بالصفحة في ذاكرته المؤقته.وهذا مثال يوضح استخدام هذه الخاصية:
<%
Response.ExpiresAbsolute=#May 16, 2003 16:30:00#
%>
~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
الخاصية IsClientConnected:
ستكون هذه الخاصية هي الأخيرة التي سنتطرق لها في هذا الدرس، تستخدم هذه الخاصية للتأكد من ما إذا المستخدم لازال متصلاً بالخادم أم لا !! وهي تأخذ قيمتين، إما True أو False.
True إذا كان المستخدم ما زال متصلاً بالخادم .. و False إذا كان غير متصل.
مثال لتوضيح عمل هذه الخاصية:
<%Response.Buffer=True%>
<HTML>
<BODY>
<%
If Response.IsClientConnected=True Then
Dim x
For x=0 To 10000000
x=x+2
Next
Response.Write(x)
Else
Response.End
End If
%>
</BODY>
</HTML>
هذا الكود يقوم بالتأكد من ما إذا كان المستخدم متصلاً بالخادم قبل الدخول في عمليات حسابية مطولة، وذلك عن طريق الأمر If في لغة VBScript.. فإذا كان متصلاً فإن الخادم يبدأ بمعالجة الأوامر الأوامر التي تطلب عمليات حسابية مطولة ويعرض النتيجة.. أما لو وجد أن المستخدم غير متصل فإنه يوقف المعالجة حتى لا يهدر الوقت في المعالجة بينما المستخدم غير متصل!
* تفيد هذه الخاصية في الحفاظ على موارد الخادم وعدم إهدارها، خصوصاً حين تتطلب الصفحة كم كبير من المعالجة كاسترجاع أو تخزين بيانات في قاعدة البيانات، أو إجراء عمليات حسابية مقعدة تستغرق وقت طويل.
~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
الخاصية ContentType :
هذه الخاصية تفيد مستعرض الويب في معرفة نوع البيانات التي تحتويها الصفحة لتساعده في عرضها للمستخدم بصورة صحيحة.
هذا المثال يوضح طريقة استخدامها:
%>
Response.ContentType="text/plain"
<%
* يجب كتابة العبارة السابقة في بداية صفحة ASP قبل وسوم HTML.
* لاحظ أنه يجب أن يكتب نوع المحتوى في العبارة Response.ContentType بين علامتي تنصيص.
* text/plain هي نوع المحتوى ; text الفئة العامة للمحتوى و plain الفئة المخصصة من الفئة العامة text.. الجدول التالي يبين عدد من الفئات العامة والمخصصة التي يمكن أن تحتويها صفحة الويب :
نوع المحتوى
الفئة العامة
الفئة المخصصة
الوصف
text/html ,text/plain,text/RichText
Text
html, plain,RichText
رموز HTML ونص عادي
image/GIF ,image/JPEG
Image
JPEG,GIF
صورة
audio/basic
Audio
Basic
ملف صوتي
video/MPEG
Video
MPEG
ملف فيديو
application/x-doc,aplication/x-pdf,application/x-cdf
Application
x-doc,x-pdf,x-cdf
مستندات
~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
الدالة AddHeader :
هذه الدالة ترسل معلومات للمستعرض عن صفحة ASP التي يطلبها أيضاً !! ولكن ترسلها كرؤوس للصفحة ! ومن أمثلة هذه المعلومات، معلومات عن تاريخ إنشاء صفحة الويب واللغة المستخدمة في هذه الصفحة وعدد أحرف الصفحة و نوع خادم الويب الذي يعالج الصفحة !
تستخد هذه الدالة كالتالي:
%>
Response.AddHeader"Content-Language","en"
<%
* يجب كتابة العبارة السابقة في بداية صفحة ASP قبل وسوم HTML.
* الجدول التالي يوضح بعض الرؤوس القياسية التي يمكن استخدامها:
الرأس
الوصف
Age
الوقت الذي مر على إنشاء صفحة الويب
Content-Language
اللغة المستخدمة في صفحة الويب
Content-Length
عدد الأحرف في صفحة الويب
Server
نوع خادم الويب الذي يعالج صفحة الويب
Custom-Error
الأخطاء الشائعة في صفحة الويب
* الموقع http://www.freesoft.org/CIE/RFC/2068/155.htm يعرض أيضاً بعض الرؤوس القياسية المستخدمة.
~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
الدالة Redirect :
الدالة الأخيرة التي سنتعرض لها في هذا الدرس هي الدالة Redirect والتي تحول طلب المستخدم لصفحة ما إلى صفحة أخرى. فمثلاً لو طلب مستخدم صفحة لا يحق له الوصول إليها فإن المستعرض يحوله- بعد التأكد من أحقية وصوله للصفحة - إلى صفحة أخرى!
مثال على استخدام هذه الدالة:
الكود التالي سيتحقق من اسم الشخص فإذا لم يكن الاسم هو نفسه المطلوب فإن الصفحة تقوم بتحويل هذا المستخدم تلقائياً لصفحة أخرى !
<%
Dim name
If name= Ahmed then
Response.Write(" أهلاً بك ")
Else
Response.Redirect"PermissionMsg.asp"
End If
%>
بهذا نكون قد انتهينا من الدرس .. تعرضنا لأهم الخواص والدوال للكائن Response أما باقي الخواص والدوال فسأدرجها في جدول للتعرف عليها:
Charset
Status
PICS
IsCientConnected
ExpiresAbsolute
Expires CacheControl ContentType Buffer الخاصية
Redirect
AddHeader
AppendToLog
BinaryWrite
Write
Flush
End
Clear
الدالة
نراكم في الدرس القادم بإذن الله.
|
|
خدمات المحتوى
|
تقييم
|
|
|
Powered by Dimofinf cms Version 3.0.0
Copyright© Dimensions Of Information Inc.