SlideShare a Scribd company logo
‫الر‬ ‫هللا‬ ‫بسم‬‫ح‬‫الرحيم‬ ‫من‬
‫التعامل‬ ‫عن‬ ‫الدرس‬ ‫الٌوم‬‫الكوكٌز‬ ‫مع‬
‫هو‬ ‫الدرس‬ ‫بهذا‬ ‫سنأخذه‬ ‫ما‬:
‫الكوكٌز‬ ‫عن‬ ‫تارٌخٌة‬ ‫لمحة‬
‫الكوكٌز‬ ً‫ه‬ ‫ما‬
‫الكوكٌز‬ ‫وسلبٌات‬ ‫اٌجابٌات‬
‫الكوكٌز‬ ‫إرسال‬‫المستعرض‬ ‫إلى‬
‫من‬ ‫الكوكٌز‬ ‫قراءة‬‫المستعرض‬
‫الكوكٌز‬ ‫عن‬ ‫األول‬ ‫المثال‬
‫الطرق‬(method)‫الصف‬ ً‫ف‬ ‫الخاصة‬Cookie
‫الكوكٌز‬ ‫جلسة‬ ‫بٌن‬ ‫الفرق‬(Session Cookies)‫المستمر‬ ‫الكوكٌز‬ ‫و‬(Persistent Cookies)
‫الواجبات‬‫التدرٌب‬ ‫أجل‬ ‫من‬
‫الكوكيز‬ ‫عن‬ ‫تاريخية‬ ‫لمحة‬:
ً‫ف‬ ‫الموظف‬ ‫من‬ ‫الكوكٌز‬ ‫فكرة‬ ‫جاءت‬Netscape Communications‫اسمه‬ً‫مونتول‬ ‫لو‬(lou Montulli)
‫حزٌران‬ ً‫ف‬ ‫واالتصاالت‬ ‫اإلنترنت‬ ً‫ف‬ ‫الستخدامها‬4991ً‫ف‬ ‫تطبٌق‬ ‫بتصمٌم‬ ‫تقوم‬ ‫الشركة‬ ‫كانت‬ ‫حٌث‬‫التجارة‬
‫الزبا‬ ‫إلحدى‬ ‫اإللكترونٌة‬‫ئن‬.‫االفتراضٌة‬ ‫التسوٌق‬ ‫عربة‬ ‫طرٌق‬ ‫عن‬ ‫التوثٌق‬ ‫لمشكلة‬ ‫حل‬ ‫توفر‬ ‫الكوكٌز‬ ‫أن‬ ‫حٌث‬.
‫جانب‬ ‫إلى‬ ‫بالعمل‬ ‫قام‬ً‫مونتول‬‫المستعرض‬ ‫الكوكٌز‬ ‫ٌدعم‬ ‫مستعرض‬ ‫أول‬ ‫كتابة‬ ً‫ف‬Netscape‫هو‬‫جٌان‬ ‫جون‬
‫اندرٌا‬(John Giannandrea)‫النسخة‬ ‫إصدار‬ ‫تم‬ ‫حٌث‬0.9 beta‫من‬Mosaic Netscape‫مستعرض‬ ‫كأول‬
‫ٌدع‬ً‫ف‬ ‫ذالك‬ ‫الكوكٌز‬ ‫م‬41‫األول‬ ‫تشرٌن‬4991.‫المختبر‬ ‫خارج‬ ‫الكوكٌز‬ ‫لـ‬ ‫استخدام‬ ‫أول‬‫كان‬ ‫إذا‬ ‫عما‬ ‫ٌتحرى‬ ‫كان‬
‫موقع‬ ‫زوار‬Netscape‫الموقع‬ ‫زاروا‬ ‫أن‬ ‫لهم‬ ‫سبق‬‫ال‬ ‫أم‬.‫رشح‬ً‫مونتول‬‫للحصول‬‫اختراع‬ ‫براءة‬ ‫على‬‫تكنولوجٌا‬ٌ‫الكوك‬‫ز‬
‫عام‬ ً‫ف‬4991,‫عام‬ ً‫ف‬ ‫له‬ ‫منحت‬ ‫وقد‬4991.‫ف‬ ‫الكوكٌز‬ ‫دعم‬ ‫وتم‬‫برنامج‬ ً‫إكسبلو‬ ‫إنترنت‬‫ر‬‫ر‬(Internet
Explorer)‫عام‬ ً‫الثان‬ ‫تشرٌن‬ ً‫ف‬ ‫صدر‬ ‫الذي‬ ً‫الثان‬ ‫اإلصدار‬ ً‫ف‬4991.
‫الوقت‬ ‫ذلك‬ ً‫ف‬ ‫للعامة‬ ‫واسع‬ ‫نطاق‬ ‫على‬ ‫معروفة‬ ‫تكن‬ ‫لم‬ ‫الكوكٌز‬ ‫بداٌة‬.‫نشرت‬ ‫أن‬ ‫بعد‬ ‫بهم‬ ‫علموا‬ ‫الناس‬ ‫عامة‬ ‫ولكن‬
‫تاٌم‬ ‫فاٌنانشال‬‫ز‬(Financial Timesً‫ه‬‫صحٌفة‬‫األعمال‬ٌ‫التجار‬‫ة‬‫الدولٌة‬)ً‫ف‬ ‫عنها‬ ‫مقاال‬41,‫فبراٌر‬4991.‫لقٌت‬
‫الكوكٌز‬‫االهتمام‬ ‫من‬ ‫الكثٌر‬ً‫اإلعالم‬,‫لذلك‬‫تداعٌات‬ ‫بسبب‬‫انتهاك‬ ‫عن‬‫الخصوصٌة‬‫المحتملة‬ ‫المستخدم‬.‫نوقشت‬ ً‫ا‬‫أٌض‬
‫جلستان‬ ً‫ف‬ ‫الكوكٌز‬‫استماع‬ ‫جلسات‬ ‫من‬‫االتحادٌة‬ ‫التجارة‬ ‫لجنة‬‫المتحدة‬ ‫بالوالٌات‬ً‫عام‬ ً‫ف‬4991‫و‬4991.‫تم‬‫تشكل‬
‫إطار‬ ً‫ف‬ ‫خاص‬ ‫عمل‬ ‫فرٌق‬‫الهندسٌة‬ ‫اإلنترنت‬ ‫مهام‬ ‫فرٌق‬(IETF)‫نٌسان‬ ً‫ف‬ ‫الكوكٌز‬ ‫موصفات‬ ‫تطوٌر‬ ‫اجل‬ ‫من‬
4991‫و‬‫اقترحها‬ ‫قد‬‫من‬ ‫كل‬‫بٌلٌندورف‬ ‫برٌان‬(Brian Behlendorf)‫كرٌستول‬ ‫ودٌفٌد‬(David Kristol)‫إلدخال‬
‫المتشعب‬ ‫التعامل‬ ‫حالة‬ ً‫ف‬ ‫الكوكٌز‬(HTTP transactions),‫المجمو‬ ‫هذه‬ ‫قررت‬‫ٌرأسها‬ ً‫الت‬ ‫عة‬‫كرٌستول‬
‫موصفات‬ ‫استخدام‬Netscape‫شباط‬ ً‫ف‬ ‫وذالك‬ ‫بدأ‬ ‫كنقطة‬4991.‫الطرف‬ ‫أن‬ ‫العامل‬ ‫الفرٌق‬ ‫وحدد‬‫لـ‬ ‫الثالث‬
‫للخصوصٌة‬ ‫كبٌر‬ ‫تهدٌد‬ ‫ٌعتبر‬ ‫الكوكٌز‬.‫و‬‫ك‬ ‫أخٌرا‬ ‫نشرت‬ ‫المجموعة‬ ‫وضعتها‬ ً‫الت‬ ‫المواصفات‬‫وثائق‬RFC‫رقمها‬
1419(RFC 2109(‫شباط‬ ً‫ف‬ ‫وذالك‬4991.‫ل‬ ‫الثالث‬ ‫الطرف‬ ‫أن‬ ‫على‬ ‫ٌنص‬ ‫إنه‬‫ا‬ ‫ـ‬‫لكوكٌز‬‫هو‬‫به‬ ‫مسموح‬ ‫غٌر‬ ‫إما‬
‫افتراضٌا‬ ‫تشغٌله‬ ‫ٌتم‬ ‫لم‬ ‫األقل‬ ‫على‬ ‫أو‬ ,‫اإلطالق‬ ‫على‬.
‫ألنه‬‫ذاك‬‫ل‬ ‫الثالث‬ ‫الطرف‬ ‫بالفعل‬ ‫تستخدم‬ ‫الدعاٌة‬ ‫شركات‬ ,‫الوقت‬‫ا‬ ‫ـ‬‫لكوكٌز‬.‫وكانت‬‫ل‬ ‫الثالث‬ ‫الطرف‬ ‫حول‬ ‫التوصٌة‬‫ـ‬
‫ا‬‫لك‬‫وكٌز‬‫الرابط‬ ‫فهذا‬ ً‫ه‬RFC 2109ً‫وه‬‫قبل‬ ‫من‬ ‫متبعة‬ ‫تكن‬ ‫لم‬Netscape‫اكسبلورر‬ ‫وإنترنت‬.‫عقوب‬ ‫وانتهاكها‬‫ت‬‫ه‬
‫الرابط‬ ‫هذا‬ ً‫ف‬RFC 2965‫األول‬ ‫تشرٌن‬ ً‫ف‬ ‫ووضعت‬1111.
‫ما‬‫الكوكيز‬ ‫ملفات‬ ‫هي‬:
‫كلمة‬‫ال‬‫كوكٌز‬‫باإلنجلٌزٌة‬‫ولكن‬ ‫المحلى‬ ‫الكعك‬ ‫تعنى‬ً‫ف‬‫ٌرسلها‬ ‫الصغٌرة‬ ‫النصٌة‬ ‫الملفات‬ ‫تعنى‬ ‫االنترنت‬ ‫عالم‬
‫ألٌك‬‫وعن‬ ‫عنك‬ ‫الشخصٌة‬ ‫المعلومات‬ ‫من‬ ‫كثٌر‬ ‫معرفة‬ ‫للموقع‬ ‫تتٌح‬ ً‫وه‬ ‫تزوره‬ ‫الذي‬ ‫بالموقع‬ ‫الخاص‬ ‫السٌرفر‬
‫وبما‬ ‫جهازك‬‫أن‬‫الس‬ ‫افتراضٌا‬ ‫ضبطت‬ ‫قد‬ ‫المتصفحات‬‫هذ‬ ‫تقبال‬‫ه‬‫بدون‬ ‫الملفات‬‫أن‬‫تسألك‬‫تعد‬ ‫الكوكٌز‬ ‫فملفات‬ ‫لذا‬
‫الفرد‬ ‫لخصوصٌة‬ ‫صارخا‬ ‫انتهاكا‬.
‫أقسام‬ ‫ستة‬ ‫من‬ ‫الكوكيز‬ ‫يتألف‬:
4-Name:‫الكوكٌز‬ ‫اسم‬.
1-Value:‫محرفٌة‬ ‫سلسلة‬ ‫عن‬ ‫عبارة‬ ً‫وه‬ ‫الكوكٌز‬ ‫قٌمة‬(String).
1-Age:‫موجود‬ ‫غٌر‬ ‫الكوكٌز‬ ‫ٌصبح‬ ‫بعدها‬ ‫انتهاءه‬ ‫تارٌخ‬ ‫أي‬ ‫الكوكٌز‬ ‫عمر‬ ‫وهو‬.
1-Path:‫المسارات‬ ‫جمٌع‬ ‫سٌأخذ‬ ‫فأنه‬ ‫قٌمته‬ ‫تحدٌد‬ ‫عدم‬ ‫حال‬ ً‫ف‬ ‫الكوكٌز‬ ‫لـ‬ ‫الوصل‬ ‫ٌمكنه‬ ‫الذي‬ ‫المسار‬ ‫هو‬
‫الكوكٌز‬ ‫له‬ ‫ٌتبع‬ ‫الذي‬ ‫الموقع‬ ‫نفس‬ ‫ضمن‬.
1-Domain:‫المالك‬ ‫الموقع‬‫الكوكٌز‬ ‫لـ‬.
1-Secure:‫االتصال‬ ‫لـ‬ ‫فقط‬ ‫متاح‬ ‫ٌكون‬ ‫فهو‬ ‫أمان‬ ‫كان‬ ‫حال‬ ً‫ف‬ ‫التشفٌر‬ ‫أو‬ ‫األمان‬ ‫درجة‬SSL.
‫مالحظة‬:‫على‬‫االسم‬‫الكوكٌز‬ ‫قٌمة‬‫القٌم‬ ‫هذه‬ ‫وعلى‬ ‫فراغ‬ ‫على‬ ‫تحوي‬ ‫ال‬ ‫أن‬[ ] ( ) = , " / ? @ : ;
‫الكوكيز‬ ‫وسلبيات‬ ‫ايجابيات‬:
‫ايجابيات‬:‫العمل‬ ‫تسهيل‬ ‫أجل‬ ‫من‬ ‫إدخالها‬ ‫تكرار‬ ‫تجنب‬ ‫البيانات‬ ‫بعض‬ ‫حفظ‬
4-‫ٌستخدم‬‫الكوكٌز‬ً‫ف‬‫المرور‬ ‫كلمة‬ ‫و‬ ‫المستخدم‬ ‫اسم‬ ‫تتطلب‬ ً‫الت‬ ‫المواقع‬:‫و‬ ‫المستخدم‬ ‫هوٌة‬ ‫حفظ‬‫ربما‬
‫الحظت‬‫أن‬‫السر‬ ‫كلمة‬ ‫كتابة‬ ‫وٌنتظر‬ ‫اسمك‬ ‫ٌعرف‬ ‫تزوره‬ ‫الذي‬ ‫الموقع‬.
1-‫البرٌد‬ ‫خدمة‬ ً‫ف‬ً‫االلٌكترون‬:‫بعد‬ ‫تقراها‬ ‫لم‬ ً‫والت‬ ‫قرأتها‬ ً‫الت‬ ‫الرسائل‬ ‫تمٌٌز‬ ‫و‬ ‫حفظ‬‫عن‬ ‫أصبح‬ ً‫ا‬ٌ‫حال‬ ‫لكن‬
‫الغرض‬ ‫لهذا‬ ‫الكوكٌز‬ ‫استخدام‬ ‫وزال‬ ‫البٌانات‬ ‫قواعد‬ ‫طرٌقة‬.
1-‫مواقع‬ ً‫ف‬‫التسوق‬:‫حفظ‬‫المشترٌات‬‫ت‬ ً‫الت‬‫الوقت‬ ‫لتوفٌر‬ ‫بك‬ ‫الخاصة‬ ‫التسوق‬ ‫سلة‬ ً‫ف‬ ‫شرائها‬ ً‫ف‬ ‫رغب‬‫لكن‬
‫الـ‬ ‫ٌستخدم‬ ‫أصبح‬ ً‫ا‬ٌ‫حال‬Session‫أدوات‬ ‫عبر‬ ‫الجهاز‬ ‫من‬ ‫الكوكٌز‬ ً‫ف‬ ‫التعدٌل‬ ‫إلمكانٌة‬ ً‫ا‬‫نظر‬ ‫الغرض‬ ‫لهذا‬
‫خاصة‬‫عن‬ ‫سٌكون‬ ‫القادم‬ ‫والدرس‬Session‫إ‬‫هللا‬ ‫شاء‬ ‫ن‬.
1-‫ٌمكن‬ ً‫الت‬ ‫المواقع‬‫تخصٌصها‬:‫ب‬ ‫الخاصة‬ ‫الصفحة‬ ‫حفظ‬ ً‫ف‬ ‫تستخدم‬ً‫عل‬ ‫بناءا‬ ‫الموقع‬ ‫لك‬ ‫لٌعرضها‬ ‫ك‬
‫الت‬ ‫الخٌارات‬ً‫وخصصتها‬ ‫سبق‬.
‫السلبيات‬:‫الفرد‬ ‫خصوصية‬ ‫انتهاك‬
1-‫اإلحصائٌة‬ ‫األغراض‬:‫الزائرٌن‬ ‫وكثافة‬ ‫عدد‬ ً‫عل‬ ‫الموقع‬ ‫لٌتعرف‬.
2-‫اإلعالن‬ ‫شركات‬:‫عنك‬ ‫دقٌقة‬ ‫صورة‬ ‫برسم‬ ‫الكوكٌز‬ ‫ملفات‬ ‫طرٌق‬ ‫عن‬ ‫أثرك‬ ‫اقتفاء‬ ‫تحاول‬ ً‫وه‬
‫بك‬ ‫خاصا‬ ‫سجال‬ ً‫فتنش‬ ‫اهتماماتك‬ ‫وعن‬ً‫عل‬ ‫نقرتها‬ ‫نقرة‬ ‫وكل‬ ‫تزورها‬ ً‫الت‬ ‫المواقع‬ ‫ٌتضمن‬
‫عرض‬ ‫وتتجنب‬ ‫بالذات‬ ‫أنت‬ ‫لك‬ ‫مخصص‬ ‫اإلعالنات‬ ‫من‬ ‫بوابل‬ ‫فتمطرك‬ ‫هناك‬ ‫أو‬ ‫هنا‬ ‫إعالن‬
‫هذه‬ ‫أشهر‬ ‫ومن‬ ‫معه‬ ‫تتجاوب‬ ‫لم‬ ‫أو‬ ‫رأٌتها‬ ‫سبق‬ ً‫الت‬ ‫اإلعالنات‬‫الشركات‬Doubleclick.net.
‫المستعرض‬ ‫إلى‬ ‫الكوكيز‬ ‫إرسال‬:
‫إرسال‬‫الكوكٌز‬‫العمٌل‬ ‫إلى‬‫ت‬‫خطوات‬ ‫ثالث‬ ‫تضمن‬
1-‫نمط‬ ‫من‬ ‫غرض‬ ‫إنشاء‬Cookie.
2-‫الكوكي‬ ‫لـ‬ ‫األقصى‬ ‫عمر‬ ‫قيمة‬ ‫وضع‬.
3-‫في‬ ‫الكوكي‬ ‫وضع‬HTTP response headers.
‫خطوة‬ ‫كل‬ ‫تفاصٌل‬
‫نمط‬ ‫من‬ ‫غرض‬ ‫إنشاء‬Cookie:
‫من‬ ‫للغرض‬ ً‫البان‬ ‫استدعاء‬ ‫ٌتم‬Cookie‫نمط‬ ‫من‬ ‫هما‬ ‫والقٌمة‬ ‫االسم‬ ‫هما‬ ‫وسٌطان‬ ‫من‬ ‫ٌتألف‬ ‫وهو‬String
‫ذكرنا‬ ‫كما‬ ً‫ا‬‫أٌض‬‫القٌم‬ ‫وال‬ ‫فراغ‬ ‫تحوي‬ ‫ال‬ ‫واالسم‬ ‫القٌم‬ ‫تكون‬ ‫أن‬ ‫ٌجب‬ ‫المالحظة‬ ً‫ف‬[ ] ( ) = , " / ? @ : ;
‫المثال‬ ‫سبٌل‬ ‫على‬‫إلنشاء‬‫باسم‬ ً‫كوك‬userID‫وقٌمة‬a1234ً‫ٌل‬ ‫ما‬ ‫أتباع‬:
Cookie c = new Cookie("userID", "a1234");
‫الكوكي‬ ‫لـ‬ ‫األقصى‬ ‫عمر‬ ‫قيمة‬ ‫وضع‬:
‫إلى‬ ‫وأرسلته‬ ً‫كوك‬ ‫بإنشاء‬ ‫قمت‬ ‫إذا‬‫المستعرض‬,‫لـ‬ ‫مشابه‬ ‫بشكل‬ ‫ٌعمل‬ ً‫الكوك‬ ً‫ا‬ٌ‫فافتراض‬session(‫نأخذه‬ ‫وسوف‬
‫المقبل‬ ‫الدرس‬ ً‫ف‬:)‫بإغالق‬ ‫ٌقوم‬ ‫المستخدم‬ ‫عندما‬ ً‫الكوك‬ ‫وٌحذف‬ ‫المتصفح‬ ‫ذاكرة‬ ً‫ف‬ ‫تخزٌنه‬ ‫ٌتم‬ ً‫الكوك‬
‫المستعرض‬,‫تسمى‬ ‫الحالة‬ ‫هذا‬session-live cookie.
‫إ‬‫القرص‬ ‫على‬ ‫الكوكٌز‬ ‫لتخزٌن‬ ‫المستعرض‬ ‫من‬ ‫ترٌد‬ ‫كنت‬ ‫ذا‬,‫الطرٌقة‬ ‫استخدام‬ ‫علٌك‬setMaxAge‫ولهذه‬
‫هو‬ ‫واحد‬ ‫وسٌط‬ ‫الطرٌقة‬intً‫بالثوان‬ ً‫الكوك‬ ‫عمر‬ ‫وهو‬,‫أسبوع‬ ً‫الكوك‬ ‫عمل‬ ‫جعل‬ ‫أردة‬ ‫إذا‬ ‫المثال‬ ‫سبٌل‬ ‫فعال‬:
c.setMaxAge(60*60*24*7);//‫أسبوع‬ ً‫الكوك‬ ‫عمر‬
‫هامة‬ ‫مالحظة‬:‫غرض‬ ‫تنشأ‬ ‫عندما‬‫نمط‬ ‫من‬Cookie‫للمستعرض‬ ‫إرساله‬ ‫قبل‬ ً‫الكوك‬ ‫عمر‬ ‫تحدٌد‬ ‫علٌك‬ ً‫ٌنبغ‬.
‫في‬ ‫الكوكي‬ ‫وضع‬response headers:
ً‫ف‬ ‫وحشره‬ ً‫الكوك‬ ‫إلرسال‬response headers‫اسمه‬ ‫هٌدر‬ ً‫ف‬Set-Cookie(‫الدرس‬ ً‫ف‬ ‫وذكرناه‬
‫السادس‬)‫الطرٌقة‬ ‫استعمال‬ ‫علٌك‬addCookie‫الصف‬ ً‫ف‬ ‫الموجودة‬HttpServletResponse‫ع‬‫االنتباه‬ ‫لٌك‬
ٌ‫الطر‬ ‫أن‬‫ق‬ً‫ه‬ ‫ة‬addCookie‫ولٌس‬setCookie‫ألن‬‫من‬ ‫ه‬‫ٌخطر‬ ‫ممكن‬ً‫ف‬‫ستكون‬ ‫الطرٌقة‬ ‫أن‬ ‫البال‬
setCookie‫ألن‬response headers‫هو‬ ‫الكوكٌز‬ ‫على‬ ‫المسؤول‬setCookie.
‫مثال‬:ً‫الكوك‬ ‫إضافة‬ ‫أردنا‬ ‫لو‬userCookieً‫ٌل‬ ‫بما‬ ‫قم‬ ‫سنة‬ ‫عمره‬:
Cookie userCookie = new Cookie("user", "uid1234");
userCookie.setMaxAge(60*60*24*365); // ‫لسنة‬ ‫لمدة‬ ً‫الكوك‬ ‫تخزٌن‬
response.addCookie(userCookie);
‫المستعرض‬ ‫من‬ ‫الكوكيز‬ ‫قراءة‬:
‫خطوتان‬ ‫بـ‬ ‫ذالك‬ ‫ٌتلخص‬ ‫العمٌل‬ ‫من‬ ‫الكوكٌز‬ ‫قراءة‬ ‫أجل‬ ‫من‬:
1-‫الطريقة‬ ‫استدعاء‬getCookies‫الطريقة‬ ‫بهذه‬request.getCookies
2-‫حلقة‬‫االستدعاء‬ ‫من‬ ‫الكوكيز‬ ‫مصفوفة‬ ‫عناصر‬ ‫على‬ ‫للمرور‬getCookies‫المطلوب‬ ‫كوكي‬ ‫على‬ ‫والبحث‬.
‫الخطوات‬ ‫تفاصٌل‬
‫استدعاء‬request.getCookies:
‫استدعاء‬ ‫إن‬request.getCookies‫من‬ ‫مصفوفة‬ ‫لنا‬ ‫ٌعٌد‬Cookie‫ٌقابل‬ ‫بما‬ ‫وقٌم‬ ‫بأسماء‬request headers
‫المستعرض‬ ً‫ف‬.‫هناك‬ ‫ٌكون‬ ‫لم‬ ‫حال‬ ً‫ف‬‫تعٌد‬ ‫سوف‬ ‫الطرٌقة‬ ‫فإن‬ ً‫كوك‬ ‫الطلب‬ ً‫ف‬null.
‫الكوكيز‬ ‫مصفوفة‬ ‫عناصر‬ ‫على‬ ‫للمرور‬ ‫حلقة‬:
‫علٌك‬ ً‫الكوك‬ ‫اسم‬ ‫لمعرفة‬ ‫معٌن‬ ً‫كوك‬ ‫عن‬ ‫لنبحث‬ ‫الكوكٌز‬ ‫عناصر‬ ‫جمٌع‬ ‫على‬ ‫نمر‬ ‫فإننا‬ ‫بالحلقة‬ ‫المرور‬ ‫أثناء‬
‫الطرٌقة‬ ‫استخدام‬getName‫لـ‬ ‫الوصول‬ ‫عند‬ ‫عنه‬ ‫تبحث‬ ‫الذي‬ ‫االسم‬ ‫مع‬ ‫االسم‬ ‫تقارن‬ ‫ثمة‬ ‫ومن‬‫المطلوب‬ ً‫الكوك‬
‫الطرٌقة‬ ‫استخدام‬ ‫فعلٌك‬ ‫المطلوب‬ ً‫الكوك‬ ‫قٌمة‬ ‫على‬ ‫الحصول‬ ‫أرد‬ ‫وإذا‬ ‫ترٌد‬ ‫ما‬ ‫بتنفٌذ‬ ‫تقوم‬getValue‫وبعدها‬
‫ترٌد‬ ‫لما‬ ‫معالجة‬ ‫بعملٌة‬ ‫تقوم‬
‫ذالك‬ ‫على‬ ‫مثال‬ ‫هذا‬:
String cookieName = "userID";
Cookie[] cookies = request.getCookies();
if (cookies != null)
{
for(int i=0; i<cookies.length; i++)
{
Cookie cookie = cookies[i];
if (cookieName.equals(cookie.getName()))
{
anything;//ً‫الكوك‬ ‫لـ‬ ‫إٌجادك‬ ‫بعد‬ ‫تشاء‬ ‫ما‬ ‫أفعل‬
}
}
}
‫األول‬ ‫المثال‬:‫ال‬ ‫أما‬ ‫قبل‬ ‫من‬ ‫الصفحة‬ ‫بزٌارة‬ ‫قمت‬ ‫إذا‬ ‫معرفة‬ ‫عن‬ ‫سٌكون‬‫و‬ ‫مرة‬ ‫ألول‬ ‫دخولك‬ ‫عند‬ ً‫ال‬‫مث‬‫سوف‬
‫أو‬ ‫بك‬ ً‫ال‬‫أه‬ ‫عبارة‬ ‫تظهر‬Welcome‫أو‬ ‫بعودتك‬ ً‫ال‬‫أه‬ ‫عبارة‬ ‫تظهر‬ ً‫الثان‬ ‫للمرة‬ ‫دخولك‬ ‫وعند‬Welcome Back
ٌ‫الكوك‬ ‫إحضار‬ ‫به‬ ‫سنقوم‬ ‫ما‬‫ز‬ٌ‫الكوك‬ ‫قٌمة‬ ‫كانت‬ ‫فإذا‬ ‫العمٌل‬ ‫الجهاز‬ ‫من‬‫ز‬null‫ونطبع‬ ‫للصفحة‬ ‫زٌارة‬ ‫أول‬ ‫فإنها‬ ‫إذا‬
Welcome‫وبعدها‬‫اسمه‬ ً‫كوك‬ ‫بإضافة‬ ‫نقوم‬repeatVisitor‫وقٌمته‬yesً‫كوك‬ ‫عن‬ ‫بالبحث‬ ‫نقوم‬ ‫فسوف‬ ‫إال‬ ‫و‬
‫ذكرنها‬ ً‫الت‬ ‫والقٌم‬ ‫ذكرناه‬ ‫الذي‬ ‫باسم‬ً‫ه‬yes‫فنطبع‬ ‫وجدنها‬ ‫حال‬ ً‫ف‬Welcome Back
‫الطرق‬(method)‫الصف‬ ‫في‬ ‫الخاصة‬Cookie:
‫الصف‬ ً‫ف‬ ‫الموجودة‬ ‫الطرق‬ ‫نعرض‬ ‫سوف‬ ‫لذالك‬ ً‫الكوك‬ ً‫ف‬ ‫الموجودة‬ ‫الستة‬ ‫أقسام‬ ‫عن‬ ‫سبق‬ ‫ما‬ ً‫ف‬ ‫تكلمنا‬ ‫كما‬
Cookieً‫وه‬ ‫األجزاء‬ ‫تلك‬ ‫مع‬ ‫تتعامل‬ ً‫الت‬Name, Value, Age, Path, Domain, Secure.
String getName():‫نمط‬ ‫من‬ ‫الغرض‬ ‫لـ‬ ‫ٌوجد‬ ‫وال‬ ً‫الكوك‬ ‫اسم‬ ‫على‬ ‫الحصول‬ ‫أجل‬ ‫من‬Cookie
‫طرٌقة‬setNameً‫ا‬‫سابق‬ ‫أسلفنا‬ ‫كما‬ ‫الطرٌقة‬ ‫هذا‬ ‫تفٌدنا‬ ‫للغرض‬ ً‫البان‬ ‫استدعاء‬ ‫عن‬ ‫ٌوضع‬ ‫االسم‬ ‫ألن‬
String getValue() / void setValue(String cookieValue):‫الطرٌقة‬setValue‫أجل‬ ‫من‬
ً‫البان‬ ً‫ف‬ ‫بوضعه‬ ‫تقم‬ ‫لم‬ ‫إذا‬ ‫بإنشائه‬ ‫قمت‬ ‫الذي‬ ً‫الكوك‬ ‫لـ‬ ‫قٌمة‬ ‫وضع‬.‫والطرٌقة‬getValue‫أجل‬ ‫من‬
‫شكل‬ ‫على‬ ‫القٌمة‬ ‫وٌعٌد‬ ً‫الكوك‬ ‫قٌمة‬ ‫على‬ ‫الحصول‬String.
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class RepeatVisitor extends HttpServlet
{
protected void doGet(HttpServletRequest request, HttpServletResponse response(
throws ServletException, IOException{
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
String title="wellcom ";
Cookie[ ] cookies = request.getCookies();
if(cookies==null)
{
title="wellcom";
Cookie co=new Cookie("repeatVisitor","yes");
co.setMaxAge(60*3);
response.addCookie(co);
} else {
for (int i=0;i<cookies.length;i++)
{
Cookie c=cookies[i];
if(c.getName().equals("repeatVisitor")&&c.getValue().equals("yes"))
{
title="wellcom back";break;
}//end if
}// end for
}// end else
out.println("<html > <head><title>Servlet repeatVisitor </title></head>"+
"<body><h1>"+ title+"</h1></body></html>");
out.close();
}//end doGet
}
int getMaxAge() / void setMaxAge(int lifetime):‫بعد‬‫النمط‬ ‫من‬ ‫الغرض‬ ‫إنشاء‬Cookie
‫الطرٌقة‬ ‫بواسطة‬ ً‫الكوك‬ ‫عمر‬ ‫وضع‬ ‫للمستعرض‬ ‫إرساله‬ ‫قبل‬ ‫فعلٌك‬setMaxAge‫عمر‬ ‫وتضع‬
‫بالثانٌة‬ ً‫الكوك‬.
String getPath() / void setPath(String path):‫الطرٌقة‬setPath‫تحدد‬ ‫خاللها‬ ‫من‬
‫المسار‬(URL)‫وس‬ ‫الطرٌقة‬ ‫ولهذه‬ ً‫الكوك‬ ‫إلى‬ ‫الوصول‬ ‫ٌمكنه‬ ‫الذي‬‫نمط‬ ‫من‬ ‫ٌط‬String‫لم‬ ‫حال‬ ً‫ف‬
‫قٌمة‬ ً‫ا‬ٌ‫افتراض‬ ‫ٌأخذ‬ ‫سوف‬ ‫فإنه‬ ‫الجزء‬ ‫لهذا‬ ‫قٌمة‬ ‫تضع‬"/"‫نفس‬ ‫ضمن‬ ‫المسارات‬ ‫كل‬ ‫أن‬ ً‫تعن‬ ً‫وه‬
ً‫الكوك‬ ‫إلى‬ ‫الوصول‬ ‫ممكنه‬ ‫الموقع‬.
String getDomain() / setDomain(String domain):‫المجال‬ ‫أو‬ ‫الموقع‬ ‫به‬ ‫تحدد‬(Domain)
‫من‬ ً‫الكوك‬ ‫إلى‬ ‫الوصول‬ ‫ٌستطٌع‬ ‫الذي‬‫الطرٌقة‬ ‫خالل‬setDomain.
: boolean getSecure() / void setSecure(boolean secure)ً‫ف‬ ‫األمان‬ ‫درجة‬ ‫تحدد‬ ‫فٌه‬
‫نوع‬ ‫من‬ ‫االتصال‬ ‫ٌكون‬ ‫أن‬ ‫فٌجب‬ ‫مأمن‬ ً‫الكوك‬ ‫كان‬ ‫حال‬SSL‫نوع‬ ‫هو‬ ‫ما‬ ‫ٌهم‬ ‫فال‬ ‫ذالك‬ ‫خالف‬ ً‫ف‬
‫االتصال‬,‫الطرٌقة‬ ‫طرٌق‬ ‫عن‬ ً‫الكوك‬ ‫لـ‬ ‫األمن‬ ‫االتصال‬ ‫لتحدٌد‬setSecure‫عند‬‫القٌم‬ ‫تكون‬ ‫ما‬true.
‫الستة‬ ‫باألقسام‬ ‫عالقة‬ ‫لها‬ ‫لٌست‬ ‫طرٌقتان‬ ‫سأذكر‬
void setComment(String comment)/String getComment():‫هذه‬‫الطرٌقة‬‫ل‬‫تحدٌد‬‫أو‬
‫عن‬ ‫البحث‬‫تعلٌقا‬‫ت‬‫المرتبطة‬‫بـ‬ً‫كوك‬.‫ٌعمل‬‫مع‬‫اإلصدار‬0‫كوكٌز‬(‫لمعر‬‫من‬ ‫الكوكٌز‬ ‫إصدار‬ ‫فة‬
‫الطرٌقة‬setVersion‫و‬getVersion)‫استخدام‬ ‫ٌتم‬ ,‫التعلٌق‬‫إعالمٌة‬ ‫ألغراض‬‫بحتة‬‫الخادم‬ ‫على‬,
‫إرسالها‬ ‫ٌتم‬ ‫وال‬‫العمٌل‬ ‫إلى‬.
void setVersion(int version)/int getVersion():‫عهى‬ ‫حصول‬ ‫أجم‬ ‫من‬ ‫انطريقتان‬
‫واإلصدار‬ ‫انكوكيز‬ ‫إصدار‬‫االفتراضي‬‫هو‬0,‫اإلصدار‬1‫واسع‬ ‫بشكل‬ ً‫ا‬‫مدعوم‬ ‫لٌس‬.
‫الكوكي‬ ‫جلسة‬ ‫بين‬ ‫الفرق‬‫ز‬(Session Cookies)‫الكوكي‬ ‫و‬‫ز‬‫المستمر‬(Persistent Cookies):
‫الكوكٌز‬ ‫بعمر‬ ‫إال‬ ‫االثنان‬ ‫بٌن‬ ‫فرق‬ ‫ٌوجد‬ ‫ال‬‫بإنهاء‬ ‫تقم‬ ‫لم‬ ‫أنك‬ ‫طالما‬ ‫الكوكٌز‬ ‫ٌبقى‬ ‫ٌكون‬ ‫الكوكٌز‬ ‫جلسة‬ ‫حالة‬ ً‫فف‬
‫المستعر‬‫عمر‬ ‫بحدٌد‬ ‫تقوم‬ ‫فأنت‬ ‫المستمر‬ ‫الكوكٌز‬ ‫حالة‬ ً‫ف‬ ‫أما‬ ‫لدٌك‬ ‫المستعرض‬ ‫ذاكرة‬ ً‫ف‬ ‫مخزن‬ ‫ٌكون‬ ‫فهو‬ ‫ض‬
‫وعمر‬ ‫به‬ ‫خاص‬ ‫مكان‬ ً‫ف‬ ‫المستعرض‬ ‫هو‬ ‫بحفظه‬ ‫ٌقوم‬ ‫والذي‬ ‫لدٌك‬ ‫القرص‬ ً‫ف‬ ‫الكوكٌز‬ ‫تخزٌن‬ ‫وٌتم‬ ‫الكوكٌز‬
‫وما‬ ‫األول‬ ‫مثال‬ ‫رأٌنا‬ ‫األول‬ ‫المثال‬ ً‫ف‬ ً‫ا‬‫حسن‬ ‫سنة‬ ‫من‬ ‫أكثر‬ ‫إلى‬ ‫ثانٌة‬ ‫من‬ ‫ٌكون‬ ً‫الكوك‬‫من‬ ‫؟‬ ً‫الكوك‬ ‫جلسة‬ ‫عن‬ ‫ذا‬
‫الطرٌقة‬ ‫من‬ ً‫الكوك‬ ‫عمر‬ ‫بحدٌد‬ ‫تقم‬ ‫ال‬ ‫فقط‬ ً‫كوك‬ ‫جلسة‬ ‫كـ‬ ‫ٌعمل‬ ً‫الكوك‬ ‫تجعل‬ ‫أن‬ ‫أجل‬setMaxAge‫فهو‬
ً‫الكوك‬ ‫وسٌصبح‬ ً‫الكوك‬ ‫عمر‬ ‫تحدٌد‬ ‫دون‬ ‫األول‬ ‫المثال‬ ‫أعد‬ ‫إذا‬ ً‫كوك‬ ‫جلسة‬ ‫أنه‬ ‫على‬ ً‫ا‬ٌ‫افتراض‬ ً‫الكوك‬ ‫ٌأخذ‬
ً‫كوك‬ ‫جلسة‬ ‫عن‬ ‫عبارة‬,‫عن‬ ‫سٌكون‬ ‫القادم‬ ‫الدرس‬ ً‫ف‬Session Trackingً‫الكوك‬ ‫عن‬ ‫الفرق‬ ‫ونذكر‬.
‫سهل‬ ‫فهو‬ ‫عنه‬ ‫أشرح‬ ‫لن‬ ً‫ألن‬ ‫الملحقات‬ ً‫ف‬ ‫وأضعه‬ ‫مثال‬ ‫سأعرض‬.
‫أجل‬ ‫من‬ ‫الواجبات‬‫التدريب‬:
‫بٌانات‬ ‫حفظ‬ ‫عن‬ ‫هو‬ ‫األول‬‫ف‬ً‫عند‬ ً‫اإللكترون‬ ‫والبرٌد‬ ً‫والثان‬ ‫األول‬ ‫االسم‬ ‫عن‬ ‫عبارة‬ ‫بسٌط‬ ‫تسجٌل‬ ‫عملٌة‬
‫ب‬ ‫بالبٌانات‬ ‫ٌحتفظ‬ ‫فسوف‬ ‫تسجلك‬‫ال‬ ‫ـ‬‫كوكٌز‬
‫الث‬‫السرفلت‬ ‫بزٌارة‬ ‫بها‬ ‫قمت‬ ً‫الت‬ ‫المرات‬ ‫عدد‬ ‫بعد‬ ‫ٌقوم‬ ً‫ان‬‫الكوكٌز‬ ‫استخدام‬ ‫علٌك‬
‫الثالث‬‫الثالث‬ ‫الدرس‬ ‫الواجب‬ ‫على‬ ‫تعدٌل‬game‫باستبدال‬‫التاغات‬ ‫قٌم‬hidden‫الكوكٌز‬ ‫بـ‬ ‫البٌانات‬ ‫بحفظ‬.
‫الراحمين‬ ‫أرحم‬ ‫يا‬ ‫أجل‬ ‫غير‬ ‫عاجل‬ ً‫ا‬‫نصر‬ ‫اللهم‬

More Related Content

Viewers also liked

Produse linie picurare tip tub naandanjain tifdrip, naanpc, taldrip, chapin
Produse linie picurare tip tub naandanjain tifdrip, naanpc, taldrip, chapinProduse linie picurare tip tub naandanjain tifdrip, naanpc, taldrip, chapin
Produse linie picurare tip tub naandanjain tifdrip, naanpc, taldrip, chapinGherghescu Gabriel
 
The coming-great-shift-07-02-2012 13-27
The coming-great-shift-07-02-2012 13-27The coming-great-shift-07-02-2012 13-27
The coming-great-shift-07-02-2012 13-27
Own
 
IIASC Projects
IIASC Projects IIASC Projects
IIASC Projects
Inna Ianovska
 
Corporate social responsibility
Corporate social responsibilityCorporate social responsibility
Corporate social responsibility
NITESH JAIN
 
الدرس التاسع
الدرس التاسعالدرس التاسع
الدرس التاسع
Anas Aloklah
 
Hermano miguel
Hermano miguelHermano miguel
Hermano miguel
Bat_Gamer1128
 
Family project
Family projectFamily project
Family project
slideet
 
Linea 600
Linea 600Linea 600
Linea 600
facalva
 
الدرس الحادي عشر
الدرس الحادي عشرالدرس الحادي عشر
الدرس الحادي عشر
Anas Aloklah
 
Linea 300
Linea 300Linea 300
Linea 300facalva
 
Voltage characteristics an overlooked contributor to power quality assessment
Voltage characteristics an overlooked contributor to power quality assessmentVoltage characteristics an overlooked contributor to power quality assessment
Voltage characteristics an overlooked contributor to power quality assessment
sunny katyara
 
تحلیل احساسات در شبکه های اجتماعی
تحلیل احساسات در شبکه های اجتماعیتحلیل احساسات در شبکه های اجتماعی
تحلیل احساسات در شبکه های اجتماعی
Hamed Azizi
 
تحلیل احساسات شبکه اجتماعی متن کاوی نظرکاوی حامد عزیزی تهران جنوب
تحلیل احساسات شبکه اجتماعی متن کاوی نظرکاوی حامد عزیزی تهران جنوبتحلیل احساسات شبکه اجتماعی متن کاوی نظرکاوی حامد عزیزی تهران جنوب
تحلیل احساسات شبکه اجتماعی متن کاوی نظرکاوی حامد عزیزی تهران جنوب
Hamed Azizi
 

Viewers also liked (14)

Produse linie picurare tip tub naandanjain tifdrip, naanpc, taldrip, chapin
Produse linie picurare tip tub naandanjain tifdrip, naanpc, taldrip, chapinProduse linie picurare tip tub naandanjain tifdrip, naanpc, taldrip, chapin
Produse linie picurare tip tub naandanjain tifdrip, naanpc, taldrip, chapin
 
.abc
.abc.abc
.abc
 
The coming-great-shift-07-02-2012 13-27
The coming-great-shift-07-02-2012 13-27The coming-great-shift-07-02-2012 13-27
The coming-great-shift-07-02-2012 13-27
 
IIASC Projects
IIASC Projects IIASC Projects
IIASC Projects
 
Corporate social responsibility
Corporate social responsibilityCorporate social responsibility
Corporate social responsibility
 
الدرس التاسع
الدرس التاسعالدرس التاسع
الدرس التاسع
 
Hermano miguel
Hermano miguelHermano miguel
Hermano miguel
 
Family project
Family projectFamily project
Family project
 
Linea 600
Linea 600Linea 600
Linea 600
 
الدرس الحادي عشر
الدرس الحادي عشرالدرس الحادي عشر
الدرس الحادي عشر
 
Linea 300
Linea 300Linea 300
Linea 300
 
Voltage characteristics an overlooked contributor to power quality assessment
Voltage characteristics an overlooked contributor to power quality assessmentVoltage characteristics an overlooked contributor to power quality assessment
Voltage characteristics an overlooked contributor to power quality assessment
 
تحلیل احساسات در شبکه های اجتماعی
تحلیل احساسات در شبکه های اجتماعیتحلیل احساسات در شبکه های اجتماعی
تحلیل احساسات در شبکه های اجتماعی
 
تحلیل احساسات شبکه اجتماعی متن کاوی نظرکاوی حامد عزیزی تهران جنوب
تحلیل احساسات شبکه اجتماعی متن کاوی نظرکاوی حامد عزیزی تهران جنوبتحلیل احساسات شبکه اجتماعی متن کاوی نظرکاوی حامد عزیزی تهران جنوب
تحلیل احساسات شبکه اجتماعی متن کاوی نظرکاوی حامد عزیزی تهران جنوب
 

Similar to الدرس الثامن

Cookies
CookiesCookies
Cookies
Mansour027
 
التخزين السحابي
التخزين السحابيالتخزين السحابي
التخزين السحابي
sultanbinabdullah
 
الدرس الرابع : خدمات الحوسبة السحابية
الدرس الرابع : خدمات الحوسبة السحابيةالدرس الرابع : خدمات الحوسبة السحابية
الدرس الرابع : خدمات الحوسبة السحابية
Hamad Alhinai
 
Social Commerce [ Rasha M. Ahmad ]
Social Commerce [ Rasha M. Ahmad ]Social Commerce [ Rasha M. Ahmad ]
Social Commerce [ Rasha M. Ahmad ]
Rasha
 
تأمين مواقع الويب
تأمين مواقع الويب تأمين مواقع الويب
تأمين مواقع الويب
AyaSalah59
 
خطة اختبار لنظام المودل للتعليم الالكتروني
خطة اختبار لنظام المودل للتعليم الالكترونيخطة اختبار لنظام المودل للتعليم الالكتروني
خطة اختبار لنظام المودل للتعليم الالكتروني
Shadi Akil
 
Bootstrap-1
Bootstrap-1Bootstrap-1
Bootstrap-1
Mohamed Sherif
 
D space presentation
D space presentationD space presentation
D space presentation
mohamed Elzalabany
 
شرح برنامج وثق للأرشفة الإلكترونية
شرح برنامج وثق للأرشفة الإلكترونيةشرح برنامج وثق للأرشفة الإلكترونية
شرح برنامج وثق للأرشفة الإلكترونية
innoKeen
 
Linuxawydairy
LinuxawydairyLinuxawydairy
Linuxawydairy
Ahmed Linuxawy
 
الدليل العلمي لنظام الدي سبيس
الدليل العلمي لنظام الدي سبيسالدليل العلمي لنظام الدي سبيس
الدليل العلمي لنظام الدي سبيس
Aml Sindi
 
الخصوصيه في العالم الرقمي
الخصوصيه في العالم الرقميالخصوصيه في العالم الرقمي
الخصوصيه في العالم الرقمي
Ashraf Osman
 
الحوسبة السحابية111.pptx
الحوسبة السحابية111.pptxالحوسبة السحابية111.pptx
الحوسبة السحابية111.pptx
AtefMarzouk1
 
استخدام البريد الإلكتروني بشكل آمن
استخدام البريد الإلكتروني بشكل آمناستخدام البريد الإلكتروني بشكل آمن
استخدام البريد الإلكتروني بشكل آمنtmr
 
عرض تصميم وإدارة المواقع والشبكات الاجتماعية 03
عرض تصميم وإدارة المواقع والشبكات الاجتماعية 03عرض تصميم وإدارة المواقع والشبكات الاجتماعية 03
عرض تصميم وإدارة المواقع والشبكات الاجتماعية 03
نوافذ حاسوبية
 
Secure sites
Secure sitesSecure sites
Secure sites
ayanasser22
 
عرض الحوسبة السحابية وتطبيقاتها 01
عرض الحوسبة السحابية وتطبيقاتها 01عرض الحوسبة السحابية وتطبيقاتها 01
عرض الحوسبة السحابية وتطبيقاتها 01
نوافذ حاسوبية
 

Similar to الدرس الثامن (20)

Cookies
CookiesCookies
Cookies
 
التخزين السحابي
التخزين السحابيالتخزين السحابي
التخزين السحابي
 
الدرس الرابع : خدمات الحوسبة السحابية
الدرس الرابع : خدمات الحوسبة السحابيةالدرس الرابع : خدمات الحوسبة السحابية
الدرس الرابع : خدمات الحوسبة السحابية
 
Social Commerce [ Rasha M. Ahmad ]
Social Commerce [ Rasha M. Ahmad ]Social Commerce [ Rasha M. Ahmad ]
Social Commerce [ Rasha M. Ahmad ]
 
تأمين مواقع الويب
تأمين مواقع الويب تأمين مواقع الويب
تأمين مواقع الويب
 
قوقل
قوقلقوقل
قوقل
 
خطة اختبار لنظام المودل للتعليم الالكتروني
خطة اختبار لنظام المودل للتعليم الالكترونيخطة اختبار لنظام المودل للتعليم الالكتروني
خطة اختبار لنظام المودل للتعليم الالكتروني
 
Bootstrap-1
Bootstrap-1Bootstrap-1
Bootstrap-1
 
D space presentation
D space presentationD space presentation
D space presentation
 
طمس البيانات
طمس البياناتطمس البيانات
طمس البيانات
 
شرح برنامج وثق للأرشفة الإلكترونية
شرح برنامج وثق للأرشفة الإلكترونيةشرح برنامج وثق للأرشفة الإلكترونية
شرح برنامج وثق للأرشفة الإلكترونية
 
Linuxawydairy
LinuxawydairyLinuxawydairy
Linuxawydairy
 
الدليل العلمي لنظام الدي سبيس
الدليل العلمي لنظام الدي سبيسالدليل العلمي لنظام الدي سبيس
الدليل العلمي لنظام الدي سبيس
 
الخصوصيه في العالم الرقمي
الخصوصيه في العالم الرقميالخصوصيه في العالم الرقمي
الخصوصيه في العالم الرقمي
 
الحوسبة السحابية111.pptx
الحوسبة السحابية111.pptxالحوسبة السحابية111.pptx
الحوسبة السحابية111.pptx
 
استخدام البريد الإلكتروني بشكل آمن
استخدام البريد الإلكتروني بشكل آمناستخدام البريد الإلكتروني بشكل آمن
استخدام البريد الإلكتروني بشكل آمن
 
عرض تصميم وإدارة المواقع والشبكات الاجتماعية 03
عرض تصميم وإدارة المواقع والشبكات الاجتماعية 03عرض تصميم وإدارة المواقع والشبكات الاجتماعية 03
عرض تصميم وإدارة المواقع والشبكات الاجتماعية 03
 
Secure sites
Secure sitesSecure sites
Secure sites
 
presintation
presintationpresintation
presintation
 
عرض الحوسبة السحابية وتطبيقاتها 01
عرض الحوسبة السحابية وتطبيقاتها 01عرض الحوسبة السحابية وتطبيقاتها 01
عرض الحوسبة السحابية وتطبيقاتها 01
 

More from Anas Aloklah

الدرس الثالث عشر
الدرس الثالث عشرالدرس الثالث عشر
الدرس الثالث عشر
Anas Aloklah
 
الدرس السادس عشر
الدرس السادس عشرالدرس السادس عشر
الدرس السادس عشر
Anas Aloklah
 
مقدمة قواعد بيانات أوراكل
مقدمة قواعد بيانات أوراكلمقدمة قواعد بيانات أوراكل
مقدمة قواعد بيانات أوراكل
Anas Aloklah
 
الدرس الرابع عشر
الدرس الرابع عشرالدرس الرابع عشر
الدرس الرابع عشر
Anas Aloklah
 
الدرس الثاني عشر
الدرس الثاني عشرالدرس الثاني عشر
الدرس الثاني عشر
Anas Aloklah
 
الدرس العاشر
الدرس العاشرالدرس العاشر
الدرس العاشر
Anas Aloklah
 
الدرس السابع
الدرس السابعالدرس السابع
الدرس السابع
Anas Aloklah
 
الدرس السادس
الدرس السادسالدرس السادس
الدرس السادس
Anas Aloklah
 
الدرس الخامس
الدرس الخامسالدرس الخامس
الدرس الخامس
Anas Aloklah
 
الدرس الرابع
الدرس الرابعالدرس الرابع
الدرس الرابع
Anas Aloklah
 
الدرس الثالث
الدرس الثالثالدرس الثالث
الدرس الثالث
Anas Aloklah
 
الدرس الثاني
الدرس الثانيالدرس الثاني
الدرس الثاني
Anas Aloklah
 
Introduction in jsp & servlet
Introduction in jsp & servlet Introduction in jsp & servlet
Introduction in jsp & servlet
Anas Aloklah
 

More from Anas Aloklah (13)

الدرس الثالث عشر
الدرس الثالث عشرالدرس الثالث عشر
الدرس الثالث عشر
 
الدرس السادس عشر
الدرس السادس عشرالدرس السادس عشر
الدرس السادس عشر
 
مقدمة قواعد بيانات أوراكل
مقدمة قواعد بيانات أوراكلمقدمة قواعد بيانات أوراكل
مقدمة قواعد بيانات أوراكل
 
الدرس الرابع عشر
الدرس الرابع عشرالدرس الرابع عشر
الدرس الرابع عشر
 
الدرس الثاني عشر
الدرس الثاني عشرالدرس الثاني عشر
الدرس الثاني عشر
 
الدرس العاشر
الدرس العاشرالدرس العاشر
الدرس العاشر
 
الدرس السابع
الدرس السابعالدرس السابع
الدرس السابع
 
الدرس السادس
الدرس السادسالدرس السادس
الدرس السادس
 
الدرس الخامس
الدرس الخامسالدرس الخامس
الدرس الخامس
 
الدرس الرابع
الدرس الرابعالدرس الرابع
الدرس الرابع
 
الدرس الثالث
الدرس الثالثالدرس الثالث
الدرس الثالث
 
الدرس الثاني
الدرس الثانيالدرس الثاني
الدرس الثاني
 
Introduction in jsp & servlet
Introduction in jsp & servlet Introduction in jsp & servlet
Introduction in jsp & servlet
 

الدرس الثامن

  • 1. ‫الر‬ ‫هللا‬ ‫بسم‬‫ح‬‫الرحيم‬ ‫من‬ ‫التعامل‬ ‫عن‬ ‫الدرس‬ ‫الٌوم‬‫الكوكٌز‬ ‫مع‬ ‫هو‬ ‫الدرس‬ ‫بهذا‬ ‫سنأخذه‬ ‫ما‬: ‫الكوكٌز‬ ‫عن‬ ‫تارٌخٌة‬ ‫لمحة‬ ‫الكوكٌز‬ ً‫ه‬ ‫ما‬ ‫الكوكٌز‬ ‫وسلبٌات‬ ‫اٌجابٌات‬ ‫الكوكٌز‬ ‫إرسال‬‫المستعرض‬ ‫إلى‬ ‫من‬ ‫الكوكٌز‬ ‫قراءة‬‫المستعرض‬ ‫الكوكٌز‬ ‫عن‬ ‫األول‬ ‫المثال‬ ‫الطرق‬(method)‫الصف‬ ً‫ف‬ ‫الخاصة‬Cookie ‫الكوكٌز‬ ‫جلسة‬ ‫بٌن‬ ‫الفرق‬(Session Cookies)‫المستمر‬ ‫الكوكٌز‬ ‫و‬(Persistent Cookies) ‫الواجبات‬‫التدرٌب‬ ‫أجل‬ ‫من‬ ‫الكوكيز‬ ‫عن‬ ‫تاريخية‬ ‫لمحة‬: ً‫ف‬ ‫الموظف‬ ‫من‬ ‫الكوكٌز‬ ‫فكرة‬ ‫جاءت‬Netscape Communications‫اسمه‬ً‫مونتول‬ ‫لو‬(lou Montulli) ‫حزٌران‬ ً‫ف‬ ‫واالتصاالت‬ ‫اإلنترنت‬ ً‫ف‬ ‫الستخدامها‬4991ً‫ف‬ ‫تطبٌق‬ ‫بتصمٌم‬ ‫تقوم‬ ‫الشركة‬ ‫كانت‬ ‫حٌث‬‫التجارة‬ ‫الزبا‬ ‫إلحدى‬ ‫اإللكترونٌة‬‫ئن‬.‫االفتراضٌة‬ ‫التسوٌق‬ ‫عربة‬ ‫طرٌق‬ ‫عن‬ ‫التوثٌق‬ ‫لمشكلة‬ ‫حل‬ ‫توفر‬ ‫الكوكٌز‬ ‫أن‬ ‫حٌث‬. ‫جانب‬ ‫إلى‬ ‫بالعمل‬ ‫قام‬ً‫مونتول‬‫المستعرض‬ ‫الكوكٌز‬ ‫ٌدعم‬ ‫مستعرض‬ ‫أول‬ ‫كتابة‬ ً‫ف‬Netscape‫هو‬‫جٌان‬ ‫جون‬ ‫اندرٌا‬(John Giannandrea)‫النسخة‬ ‫إصدار‬ ‫تم‬ ‫حٌث‬0.9 beta‫من‬Mosaic Netscape‫مستعرض‬ ‫كأول‬ ‫ٌدع‬ً‫ف‬ ‫ذالك‬ ‫الكوكٌز‬ ‫م‬41‫األول‬ ‫تشرٌن‬4991.‫المختبر‬ ‫خارج‬ ‫الكوكٌز‬ ‫لـ‬ ‫استخدام‬ ‫أول‬‫كان‬ ‫إذا‬ ‫عما‬ ‫ٌتحرى‬ ‫كان‬ ‫موقع‬ ‫زوار‬Netscape‫الموقع‬ ‫زاروا‬ ‫أن‬ ‫لهم‬ ‫سبق‬‫ال‬ ‫أم‬.‫رشح‬ً‫مونتول‬‫للحصول‬‫اختراع‬ ‫براءة‬ ‫على‬‫تكنولوجٌا‬ٌ‫الكوك‬‫ز‬ ‫عام‬ ً‫ف‬4991,‫عام‬ ً‫ف‬ ‫له‬ ‫منحت‬ ‫وقد‬4991.‫ف‬ ‫الكوكٌز‬ ‫دعم‬ ‫وتم‬‫برنامج‬ ً‫إكسبلو‬ ‫إنترنت‬‫ر‬‫ر‬(Internet Explorer)‫عام‬ ً‫الثان‬ ‫تشرٌن‬ ً‫ف‬ ‫صدر‬ ‫الذي‬ ً‫الثان‬ ‫اإلصدار‬ ً‫ف‬4991. ‫الوقت‬ ‫ذلك‬ ً‫ف‬ ‫للعامة‬ ‫واسع‬ ‫نطاق‬ ‫على‬ ‫معروفة‬ ‫تكن‬ ‫لم‬ ‫الكوكٌز‬ ‫بداٌة‬.‫نشرت‬ ‫أن‬ ‫بعد‬ ‫بهم‬ ‫علموا‬ ‫الناس‬ ‫عامة‬ ‫ولكن‬ ‫تاٌم‬ ‫فاٌنانشال‬‫ز‬(Financial Timesً‫ه‬‫صحٌفة‬‫األعمال‬ٌ‫التجار‬‫ة‬‫الدولٌة‬)ً‫ف‬ ‫عنها‬ ‫مقاال‬41,‫فبراٌر‬4991.‫لقٌت‬ ‫الكوكٌز‬‫االهتمام‬ ‫من‬ ‫الكثٌر‬ً‫اإلعالم‬,‫لذلك‬‫تداعٌات‬ ‫بسبب‬‫انتهاك‬ ‫عن‬‫الخصوصٌة‬‫المحتملة‬ ‫المستخدم‬.‫نوقشت‬ ً‫ا‬‫أٌض‬ ‫جلستان‬ ً‫ف‬ ‫الكوكٌز‬‫استماع‬ ‫جلسات‬ ‫من‬‫االتحادٌة‬ ‫التجارة‬ ‫لجنة‬‫المتحدة‬ ‫بالوالٌات‬ً‫عام‬ ً‫ف‬4991‫و‬4991.‫تم‬‫تشكل‬ ‫إطار‬ ً‫ف‬ ‫خاص‬ ‫عمل‬ ‫فرٌق‬‫الهندسٌة‬ ‫اإلنترنت‬ ‫مهام‬ ‫فرٌق‬(IETF)‫نٌسان‬ ً‫ف‬ ‫الكوكٌز‬ ‫موصفات‬ ‫تطوٌر‬ ‫اجل‬ ‫من‬ 4991‫و‬‫اقترحها‬ ‫قد‬‫من‬ ‫كل‬‫بٌلٌندورف‬ ‫برٌان‬(Brian Behlendorf)‫كرٌستول‬ ‫ودٌفٌد‬(David Kristol)‫إلدخال‬ ‫المتشعب‬ ‫التعامل‬ ‫حالة‬ ً‫ف‬ ‫الكوكٌز‬(HTTP transactions),‫المجمو‬ ‫هذه‬ ‫قررت‬‫ٌرأسها‬ ً‫الت‬ ‫عة‬‫كرٌستول‬ ‫موصفات‬ ‫استخدام‬Netscape‫شباط‬ ً‫ف‬ ‫وذالك‬ ‫بدأ‬ ‫كنقطة‬4991.‫الطرف‬ ‫أن‬ ‫العامل‬ ‫الفرٌق‬ ‫وحدد‬‫لـ‬ ‫الثالث‬ ‫للخصوصٌة‬ ‫كبٌر‬ ‫تهدٌد‬ ‫ٌعتبر‬ ‫الكوكٌز‬.‫و‬‫ك‬ ‫أخٌرا‬ ‫نشرت‬ ‫المجموعة‬ ‫وضعتها‬ ً‫الت‬ ‫المواصفات‬‫وثائق‬RFC‫رقمها‬ 1419(RFC 2109(‫شباط‬ ً‫ف‬ ‫وذالك‬4991.‫ل‬ ‫الثالث‬ ‫الطرف‬ ‫أن‬ ‫على‬ ‫ٌنص‬ ‫إنه‬‫ا‬ ‫ـ‬‫لكوكٌز‬‫هو‬‫به‬ ‫مسموح‬ ‫غٌر‬ ‫إما‬ ‫افتراضٌا‬ ‫تشغٌله‬ ‫ٌتم‬ ‫لم‬ ‫األقل‬ ‫على‬ ‫أو‬ ,‫اإلطالق‬ ‫على‬. ‫ألنه‬‫ذاك‬‫ل‬ ‫الثالث‬ ‫الطرف‬ ‫بالفعل‬ ‫تستخدم‬ ‫الدعاٌة‬ ‫شركات‬ ,‫الوقت‬‫ا‬ ‫ـ‬‫لكوكٌز‬.‫وكانت‬‫ل‬ ‫الثالث‬ ‫الطرف‬ ‫حول‬ ‫التوصٌة‬‫ـ‬ ‫ا‬‫لك‬‫وكٌز‬‫الرابط‬ ‫فهذا‬ ً‫ه‬RFC 2109ً‫وه‬‫قبل‬ ‫من‬ ‫متبعة‬ ‫تكن‬ ‫لم‬Netscape‫اكسبلورر‬ ‫وإنترنت‬.‫عقوب‬ ‫وانتهاكها‬‫ت‬‫ه‬ ‫الرابط‬ ‫هذا‬ ً‫ف‬RFC 2965‫األول‬ ‫تشرٌن‬ ً‫ف‬ ‫ووضعت‬1111. ‫ما‬‫الكوكيز‬ ‫ملفات‬ ‫هي‬: ‫كلمة‬‫ال‬‫كوكٌز‬‫باإلنجلٌزٌة‬‫ولكن‬ ‫المحلى‬ ‫الكعك‬ ‫تعنى‬ً‫ف‬‫ٌرسلها‬ ‫الصغٌرة‬ ‫النصٌة‬ ‫الملفات‬ ‫تعنى‬ ‫االنترنت‬ ‫عالم‬ ‫ألٌك‬‫وعن‬ ‫عنك‬ ‫الشخصٌة‬ ‫المعلومات‬ ‫من‬ ‫كثٌر‬ ‫معرفة‬ ‫للموقع‬ ‫تتٌح‬ ً‫وه‬ ‫تزوره‬ ‫الذي‬ ‫بالموقع‬ ‫الخاص‬ ‫السٌرفر‬ ‫وبما‬ ‫جهازك‬‫أن‬‫الس‬ ‫افتراضٌا‬ ‫ضبطت‬ ‫قد‬ ‫المتصفحات‬‫هذ‬ ‫تقبال‬‫ه‬‫بدون‬ ‫الملفات‬‫أن‬‫تسألك‬‫تعد‬ ‫الكوكٌز‬ ‫فملفات‬ ‫لذا‬ ‫الفرد‬ ‫لخصوصٌة‬ ‫صارخا‬ ‫انتهاكا‬.
  • 2. ‫أقسام‬ ‫ستة‬ ‫من‬ ‫الكوكيز‬ ‫يتألف‬: 4-Name:‫الكوكٌز‬ ‫اسم‬. 1-Value:‫محرفٌة‬ ‫سلسلة‬ ‫عن‬ ‫عبارة‬ ً‫وه‬ ‫الكوكٌز‬ ‫قٌمة‬(String). 1-Age:‫موجود‬ ‫غٌر‬ ‫الكوكٌز‬ ‫ٌصبح‬ ‫بعدها‬ ‫انتهاءه‬ ‫تارٌخ‬ ‫أي‬ ‫الكوكٌز‬ ‫عمر‬ ‫وهو‬. 1-Path:‫المسارات‬ ‫جمٌع‬ ‫سٌأخذ‬ ‫فأنه‬ ‫قٌمته‬ ‫تحدٌد‬ ‫عدم‬ ‫حال‬ ً‫ف‬ ‫الكوكٌز‬ ‫لـ‬ ‫الوصل‬ ‫ٌمكنه‬ ‫الذي‬ ‫المسار‬ ‫هو‬ ‫الكوكٌز‬ ‫له‬ ‫ٌتبع‬ ‫الذي‬ ‫الموقع‬ ‫نفس‬ ‫ضمن‬. 1-Domain:‫المالك‬ ‫الموقع‬‫الكوكٌز‬ ‫لـ‬. 1-Secure:‫االتصال‬ ‫لـ‬ ‫فقط‬ ‫متاح‬ ‫ٌكون‬ ‫فهو‬ ‫أمان‬ ‫كان‬ ‫حال‬ ً‫ف‬ ‫التشفٌر‬ ‫أو‬ ‫األمان‬ ‫درجة‬SSL. ‫مالحظة‬:‫على‬‫االسم‬‫الكوكٌز‬ ‫قٌمة‬‫القٌم‬ ‫هذه‬ ‫وعلى‬ ‫فراغ‬ ‫على‬ ‫تحوي‬ ‫ال‬ ‫أن‬[ ] ( ) = , " / ? @ : ; ‫الكوكيز‬ ‫وسلبيات‬ ‫ايجابيات‬: ‫ايجابيات‬:‫العمل‬ ‫تسهيل‬ ‫أجل‬ ‫من‬ ‫إدخالها‬ ‫تكرار‬ ‫تجنب‬ ‫البيانات‬ ‫بعض‬ ‫حفظ‬ 4-‫ٌستخدم‬‫الكوكٌز‬ً‫ف‬‫المرور‬ ‫كلمة‬ ‫و‬ ‫المستخدم‬ ‫اسم‬ ‫تتطلب‬ ً‫الت‬ ‫المواقع‬:‫و‬ ‫المستخدم‬ ‫هوٌة‬ ‫حفظ‬‫ربما‬ ‫الحظت‬‫أن‬‫السر‬ ‫كلمة‬ ‫كتابة‬ ‫وٌنتظر‬ ‫اسمك‬ ‫ٌعرف‬ ‫تزوره‬ ‫الذي‬ ‫الموقع‬. 1-‫البرٌد‬ ‫خدمة‬ ً‫ف‬ً‫االلٌكترون‬:‫بعد‬ ‫تقراها‬ ‫لم‬ ً‫والت‬ ‫قرأتها‬ ً‫الت‬ ‫الرسائل‬ ‫تمٌٌز‬ ‫و‬ ‫حفظ‬‫عن‬ ‫أصبح‬ ً‫ا‬ٌ‫حال‬ ‫لكن‬ ‫الغرض‬ ‫لهذا‬ ‫الكوكٌز‬ ‫استخدام‬ ‫وزال‬ ‫البٌانات‬ ‫قواعد‬ ‫طرٌقة‬. 1-‫مواقع‬ ً‫ف‬‫التسوق‬:‫حفظ‬‫المشترٌات‬‫ت‬ ً‫الت‬‫الوقت‬ ‫لتوفٌر‬ ‫بك‬ ‫الخاصة‬ ‫التسوق‬ ‫سلة‬ ً‫ف‬ ‫شرائها‬ ً‫ف‬ ‫رغب‬‫لكن‬ ‫الـ‬ ‫ٌستخدم‬ ‫أصبح‬ ً‫ا‬ٌ‫حال‬Session‫أدوات‬ ‫عبر‬ ‫الجهاز‬ ‫من‬ ‫الكوكٌز‬ ً‫ف‬ ‫التعدٌل‬ ‫إلمكانٌة‬ ً‫ا‬‫نظر‬ ‫الغرض‬ ‫لهذا‬ ‫خاصة‬‫عن‬ ‫سٌكون‬ ‫القادم‬ ‫والدرس‬Session‫إ‬‫هللا‬ ‫شاء‬ ‫ن‬. 1-‫ٌمكن‬ ً‫الت‬ ‫المواقع‬‫تخصٌصها‬:‫ب‬ ‫الخاصة‬ ‫الصفحة‬ ‫حفظ‬ ً‫ف‬ ‫تستخدم‬ً‫عل‬ ‫بناءا‬ ‫الموقع‬ ‫لك‬ ‫لٌعرضها‬ ‫ك‬ ‫الت‬ ‫الخٌارات‬ً‫وخصصتها‬ ‫سبق‬. ‫السلبيات‬:‫الفرد‬ ‫خصوصية‬ ‫انتهاك‬ 1-‫اإلحصائٌة‬ ‫األغراض‬:‫الزائرٌن‬ ‫وكثافة‬ ‫عدد‬ ً‫عل‬ ‫الموقع‬ ‫لٌتعرف‬. 2-‫اإلعالن‬ ‫شركات‬:‫عنك‬ ‫دقٌقة‬ ‫صورة‬ ‫برسم‬ ‫الكوكٌز‬ ‫ملفات‬ ‫طرٌق‬ ‫عن‬ ‫أثرك‬ ‫اقتفاء‬ ‫تحاول‬ ً‫وه‬ ‫بك‬ ‫خاصا‬ ‫سجال‬ ً‫فتنش‬ ‫اهتماماتك‬ ‫وعن‬ً‫عل‬ ‫نقرتها‬ ‫نقرة‬ ‫وكل‬ ‫تزورها‬ ً‫الت‬ ‫المواقع‬ ‫ٌتضمن‬ ‫عرض‬ ‫وتتجنب‬ ‫بالذات‬ ‫أنت‬ ‫لك‬ ‫مخصص‬ ‫اإلعالنات‬ ‫من‬ ‫بوابل‬ ‫فتمطرك‬ ‫هناك‬ ‫أو‬ ‫هنا‬ ‫إعالن‬ ‫هذه‬ ‫أشهر‬ ‫ومن‬ ‫معه‬ ‫تتجاوب‬ ‫لم‬ ‫أو‬ ‫رأٌتها‬ ‫سبق‬ ً‫الت‬ ‫اإلعالنات‬‫الشركات‬Doubleclick.net. ‫المستعرض‬ ‫إلى‬ ‫الكوكيز‬ ‫إرسال‬: ‫إرسال‬‫الكوكٌز‬‫العمٌل‬ ‫إلى‬‫ت‬‫خطوات‬ ‫ثالث‬ ‫تضمن‬ 1-‫نمط‬ ‫من‬ ‫غرض‬ ‫إنشاء‬Cookie. 2-‫الكوكي‬ ‫لـ‬ ‫األقصى‬ ‫عمر‬ ‫قيمة‬ ‫وضع‬. 3-‫في‬ ‫الكوكي‬ ‫وضع‬HTTP response headers. ‫خطوة‬ ‫كل‬ ‫تفاصٌل‬ ‫نمط‬ ‫من‬ ‫غرض‬ ‫إنشاء‬Cookie: ‫من‬ ‫للغرض‬ ً‫البان‬ ‫استدعاء‬ ‫ٌتم‬Cookie‫نمط‬ ‫من‬ ‫هما‬ ‫والقٌمة‬ ‫االسم‬ ‫هما‬ ‫وسٌطان‬ ‫من‬ ‫ٌتألف‬ ‫وهو‬String ‫ذكرنا‬ ‫كما‬ ً‫ا‬‫أٌض‬‫القٌم‬ ‫وال‬ ‫فراغ‬ ‫تحوي‬ ‫ال‬ ‫واالسم‬ ‫القٌم‬ ‫تكون‬ ‫أن‬ ‫ٌجب‬ ‫المالحظة‬ ً‫ف‬[ ] ( ) = , " / ? @ : ; ‫المثال‬ ‫سبٌل‬ ‫على‬‫إلنشاء‬‫باسم‬ ً‫كوك‬userID‫وقٌمة‬a1234ً‫ٌل‬ ‫ما‬ ‫أتباع‬: Cookie c = new Cookie("userID", "a1234");
  • 3. ‫الكوكي‬ ‫لـ‬ ‫األقصى‬ ‫عمر‬ ‫قيمة‬ ‫وضع‬: ‫إلى‬ ‫وأرسلته‬ ً‫كوك‬ ‫بإنشاء‬ ‫قمت‬ ‫إذا‬‫المستعرض‬,‫لـ‬ ‫مشابه‬ ‫بشكل‬ ‫ٌعمل‬ ً‫الكوك‬ ً‫ا‬ٌ‫فافتراض‬session(‫نأخذه‬ ‫وسوف‬ ‫المقبل‬ ‫الدرس‬ ً‫ف‬:)‫بإغالق‬ ‫ٌقوم‬ ‫المستخدم‬ ‫عندما‬ ً‫الكوك‬ ‫وٌحذف‬ ‫المتصفح‬ ‫ذاكرة‬ ً‫ف‬ ‫تخزٌنه‬ ‫ٌتم‬ ً‫الكوك‬ ‫المستعرض‬,‫تسمى‬ ‫الحالة‬ ‫هذا‬session-live cookie. ‫إ‬‫القرص‬ ‫على‬ ‫الكوكٌز‬ ‫لتخزٌن‬ ‫المستعرض‬ ‫من‬ ‫ترٌد‬ ‫كنت‬ ‫ذا‬,‫الطرٌقة‬ ‫استخدام‬ ‫علٌك‬setMaxAge‫ولهذه‬ ‫هو‬ ‫واحد‬ ‫وسٌط‬ ‫الطرٌقة‬intً‫بالثوان‬ ً‫الكوك‬ ‫عمر‬ ‫وهو‬,‫أسبوع‬ ً‫الكوك‬ ‫عمل‬ ‫جعل‬ ‫أردة‬ ‫إذا‬ ‫المثال‬ ‫سبٌل‬ ‫فعال‬: c.setMaxAge(60*60*24*7);//‫أسبوع‬ ً‫الكوك‬ ‫عمر‬ ‫هامة‬ ‫مالحظة‬:‫غرض‬ ‫تنشأ‬ ‫عندما‬‫نمط‬ ‫من‬Cookie‫للمستعرض‬ ‫إرساله‬ ‫قبل‬ ً‫الكوك‬ ‫عمر‬ ‫تحدٌد‬ ‫علٌك‬ ً‫ٌنبغ‬. ‫في‬ ‫الكوكي‬ ‫وضع‬response headers: ً‫ف‬ ‫وحشره‬ ً‫الكوك‬ ‫إلرسال‬response headers‫اسمه‬ ‫هٌدر‬ ً‫ف‬Set-Cookie(‫الدرس‬ ً‫ف‬ ‫وذكرناه‬ ‫السادس‬)‫الطرٌقة‬ ‫استعمال‬ ‫علٌك‬addCookie‫الصف‬ ً‫ف‬ ‫الموجودة‬HttpServletResponse‫ع‬‫االنتباه‬ ‫لٌك‬ ٌ‫الطر‬ ‫أن‬‫ق‬ً‫ه‬ ‫ة‬addCookie‫ولٌس‬setCookie‫ألن‬‫من‬ ‫ه‬‫ٌخطر‬ ‫ممكن‬ً‫ف‬‫ستكون‬ ‫الطرٌقة‬ ‫أن‬ ‫البال‬ setCookie‫ألن‬response headers‫هو‬ ‫الكوكٌز‬ ‫على‬ ‫المسؤول‬setCookie. ‫مثال‬:ً‫الكوك‬ ‫إضافة‬ ‫أردنا‬ ‫لو‬userCookieً‫ٌل‬ ‫بما‬ ‫قم‬ ‫سنة‬ ‫عمره‬: Cookie userCookie = new Cookie("user", "uid1234"); userCookie.setMaxAge(60*60*24*365); // ‫لسنة‬ ‫لمدة‬ ً‫الكوك‬ ‫تخزٌن‬ response.addCookie(userCookie); ‫المستعرض‬ ‫من‬ ‫الكوكيز‬ ‫قراءة‬: ‫خطوتان‬ ‫بـ‬ ‫ذالك‬ ‫ٌتلخص‬ ‫العمٌل‬ ‫من‬ ‫الكوكٌز‬ ‫قراءة‬ ‫أجل‬ ‫من‬: 1-‫الطريقة‬ ‫استدعاء‬getCookies‫الطريقة‬ ‫بهذه‬request.getCookies 2-‫حلقة‬‫االستدعاء‬ ‫من‬ ‫الكوكيز‬ ‫مصفوفة‬ ‫عناصر‬ ‫على‬ ‫للمرور‬getCookies‫المطلوب‬ ‫كوكي‬ ‫على‬ ‫والبحث‬. ‫الخطوات‬ ‫تفاصٌل‬ ‫استدعاء‬request.getCookies: ‫استدعاء‬ ‫إن‬request.getCookies‫من‬ ‫مصفوفة‬ ‫لنا‬ ‫ٌعٌد‬Cookie‫ٌقابل‬ ‫بما‬ ‫وقٌم‬ ‫بأسماء‬request headers ‫المستعرض‬ ً‫ف‬.‫هناك‬ ‫ٌكون‬ ‫لم‬ ‫حال‬ ً‫ف‬‫تعٌد‬ ‫سوف‬ ‫الطرٌقة‬ ‫فإن‬ ً‫كوك‬ ‫الطلب‬ ً‫ف‬null. ‫الكوكيز‬ ‫مصفوفة‬ ‫عناصر‬ ‫على‬ ‫للمرور‬ ‫حلقة‬: ‫علٌك‬ ً‫الكوك‬ ‫اسم‬ ‫لمعرفة‬ ‫معٌن‬ ً‫كوك‬ ‫عن‬ ‫لنبحث‬ ‫الكوكٌز‬ ‫عناصر‬ ‫جمٌع‬ ‫على‬ ‫نمر‬ ‫فإننا‬ ‫بالحلقة‬ ‫المرور‬ ‫أثناء‬ ‫الطرٌقة‬ ‫استخدام‬getName‫لـ‬ ‫الوصول‬ ‫عند‬ ‫عنه‬ ‫تبحث‬ ‫الذي‬ ‫االسم‬ ‫مع‬ ‫االسم‬ ‫تقارن‬ ‫ثمة‬ ‫ومن‬‫المطلوب‬ ً‫الكوك‬ ‫الطرٌقة‬ ‫استخدام‬ ‫فعلٌك‬ ‫المطلوب‬ ً‫الكوك‬ ‫قٌمة‬ ‫على‬ ‫الحصول‬ ‫أرد‬ ‫وإذا‬ ‫ترٌد‬ ‫ما‬ ‫بتنفٌذ‬ ‫تقوم‬getValue‫وبعدها‬ ‫ترٌد‬ ‫لما‬ ‫معالجة‬ ‫بعملٌة‬ ‫تقوم‬ ‫ذالك‬ ‫على‬ ‫مثال‬ ‫هذا‬: String cookieName = "userID"; Cookie[] cookies = request.getCookies(); if (cookies != null) { for(int i=0; i<cookies.length; i++) { Cookie cookie = cookies[i]; if (cookieName.equals(cookie.getName())) { anything;//ً‫الكوك‬ ‫لـ‬ ‫إٌجادك‬ ‫بعد‬ ‫تشاء‬ ‫ما‬ ‫أفعل‬ } } }
  • 4. ‫األول‬ ‫المثال‬:‫ال‬ ‫أما‬ ‫قبل‬ ‫من‬ ‫الصفحة‬ ‫بزٌارة‬ ‫قمت‬ ‫إذا‬ ‫معرفة‬ ‫عن‬ ‫سٌكون‬‫و‬ ‫مرة‬ ‫ألول‬ ‫دخولك‬ ‫عند‬ ً‫ال‬‫مث‬‫سوف‬ ‫أو‬ ‫بك‬ ً‫ال‬‫أه‬ ‫عبارة‬ ‫تظهر‬Welcome‫أو‬ ‫بعودتك‬ ً‫ال‬‫أه‬ ‫عبارة‬ ‫تظهر‬ ً‫الثان‬ ‫للمرة‬ ‫دخولك‬ ‫وعند‬Welcome Back ٌ‫الكوك‬ ‫إحضار‬ ‫به‬ ‫سنقوم‬ ‫ما‬‫ز‬ٌ‫الكوك‬ ‫قٌمة‬ ‫كانت‬ ‫فإذا‬ ‫العمٌل‬ ‫الجهاز‬ ‫من‬‫ز‬null‫ونطبع‬ ‫للصفحة‬ ‫زٌارة‬ ‫أول‬ ‫فإنها‬ ‫إذا‬ Welcome‫وبعدها‬‫اسمه‬ ً‫كوك‬ ‫بإضافة‬ ‫نقوم‬repeatVisitor‫وقٌمته‬yesً‫كوك‬ ‫عن‬ ‫بالبحث‬ ‫نقوم‬ ‫فسوف‬ ‫إال‬ ‫و‬ ‫ذكرنها‬ ً‫الت‬ ‫والقٌم‬ ‫ذكرناه‬ ‫الذي‬ ‫باسم‬ً‫ه‬yes‫فنطبع‬ ‫وجدنها‬ ‫حال‬ ً‫ف‬Welcome Back ‫الطرق‬(method)‫الصف‬ ‫في‬ ‫الخاصة‬Cookie: ‫الصف‬ ً‫ف‬ ‫الموجودة‬ ‫الطرق‬ ‫نعرض‬ ‫سوف‬ ‫لذالك‬ ً‫الكوك‬ ً‫ف‬ ‫الموجودة‬ ‫الستة‬ ‫أقسام‬ ‫عن‬ ‫سبق‬ ‫ما‬ ً‫ف‬ ‫تكلمنا‬ ‫كما‬ Cookieً‫وه‬ ‫األجزاء‬ ‫تلك‬ ‫مع‬ ‫تتعامل‬ ً‫الت‬Name, Value, Age, Path, Domain, Secure. String getName():‫نمط‬ ‫من‬ ‫الغرض‬ ‫لـ‬ ‫ٌوجد‬ ‫وال‬ ً‫الكوك‬ ‫اسم‬ ‫على‬ ‫الحصول‬ ‫أجل‬ ‫من‬Cookie ‫طرٌقة‬setNameً‫ا‬‫سابق‬ ‫أسلفنا‬ ‫كما‬ ‫الطرٌقة‬ ‫هذا‬ ‫تفٌدنا‬ ‫للغرض‬ ً‫البان‬ ‫استدعاء‬ ‫عن‬ ‫ٌوضع‬ ‫االسم‬ ‫ألن‬ String getValue() / void setValue(String cookieValue):‫الطرٌقة‬setValue‫أجل‬ ‫من‬ ً‫البان‬ ً‫ف‬ ‫بوضعه‬ ‫تقم‬ ‫لم‬ ‫إذا‬ ‫بإنشائه‬ ‫قمت‬ ‫الذي‬ ً‫الكوك‬ ‫لـ‬ ‫قٌمة‬ ‫وضع‬.‫والطرٌقة‬getValue‫أجل‬ ‫من‬ ‫شكل‬ ‫على‬ ‫القٌمة‬ ‫وٌعٌد‬ ً‫الكوك‬ ‫قٌمة‬ ‫على‬ ‫الحصول‬String. import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class RepeatVisitor extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response( throws ServletException, IOException{ response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); String title="wellcom "; Cookie[ ] cookies = request.getCookies(); if(cookies==null) { title="wellcom"; Cookie co=new Cookie("repeatVisitor","yes"); co.setMaxAge(60*3); response.addCookie(co); } else { for (int i=0;i<cookies.length;i++) { Cookie c=cookies[i]; if(c.getName().equals("repeatVisitor")&&c.getValue().equals("yes")) { title="wellcom back";break; }//end if }// end for }// end else out.println("<html > <head><title>Servlet repeatVisitor </title></head>"+ "<body><h1>"+ title+"</h1></body></html>"); out.close(); }//end doGet }
  • 5. int getMaxAge() / void setMaxAge(int lifetime):‫بعد‬‫النمط‬ ‫من‬ ‫الغرض‬ ‫إنشاء‬Cookie ‫الطرٌقة‬ ‫بواسطة‬ ً‫الكوك‬ ‫عمر‬ ‫وضع‬ ‫للمستعرض‬ ‫إرساله‬ ‫قبل‬ ‫فعلٌك‬setMaxAge‫عمر‬ ‫وتضع‬ ‫بالثانٌة‬ ً‫الكوك‬. String getPath() / void setPath(String path):‫الطرٌقة‬setPath‫تحدد‬ ‫خاللها‬ ‫من‬ ‫المسار‬(URL)‫وس‬ ‫الطرٌقة‬ ‫ولهذه‬ ً‫الكوك‬ ‫إلى‬ ‫الوصول‬ ‫ٌمكنه‬ ‫الذي‬‫نمط‬ ‫من‬ ‫ٌط‬String‫لم‬ ‫حال‬ ً‫ف‬ ‫قٌمة‬ ً‫ا‬ٌ‫افتراض‬ ‫ٌأخذ‬ ‫سوف‬ ‫فإنه‬ ‫الجزء‬ ‫لهذا‬ ‫قٌمة‬ ‫تضع‬"/"‫نفس‬ ‫ضمن‬ ‫المسارات‬ ‫كل‬ ‫أن‬ ً‫تعن‬ ً‫وه‬ ً‫الكوك‬ ‫إلى‬ ‫الوصول‬ ‫ممكنه‬ ‫الموقع‬. String getDomain() / setDomain(String domain):‫المجال‬ ‫أو‬ ‫الموقع‬ ‫به‬ ‫تحدد‬(Domain) ‫من‬ ً‫الكوك‬ ‫إلى‬ ‫الوصول‬ ‫ٌستطٌع‬ ‫الذي‬‫الطرٌقة‬ ‫خالل‬setDomain. : boolean getSecure() / void setSecure(boolean secure)ً‫ف‬ ‫األمان‬ ‫درجة‬ ‫تحدد‬ ‫فٌه‬ ‫نوع‬ ‫من‬ ‫االتصال‬ ‫ٌكون‬ ‫أن‬ ‫فٌجب‬ ‫مأمن‬ ً‫الكوك‬ ‫كان‬ ‫حال‬SSL‫نوع‬ ‫هو‬ ‫ما‬ ‫ٌهم‬ ‫فال‬ ‫ذالك‬ ‫خالف‬ ً‫ف‬ ‫االتصال‬,‫الطرٌقة‬ ‫طرٌق‬ ‫عن‬ ً‫الكوك‬ ‫لـ‬ ‫األمن‬ ‫االتصال‬ ‫لتحدٌد‬setSecure‫عند‬‫القٌم‬ ‫تكون‬ ‫ما‬true. ‫الستة‬ ‫باألقسام‬ ‫عالقة‬ ‫لها‬ ‫لٌست‬ ‫طرٌقتان‬ ‫سأذكر‬ void setComment(String comment)/String getComment():‫هذه‬‫الطرٌقة‬‫ل‬‫تحدٌد‬‫أو‬ ‫عن‬ ‫البحث‬‫تعلٌقا‬‫ت‬‫المرتبطة‬‫بـ‬ً‫كوك‬.‫ٌعمل‬‫مع‬‫اإلصدار‬0‫كوكٌز‬(‫لمعر‬‫من‬ ‫الكوكٌز‬ ‫إصدار‬ ‫فة‬ ‫الطرٌقة‬setVersion‫و‬getVersion)‫استخدام‬ ‫ٌتم‬ ,‫التعلٌق‬‫إعالمٌة‬ ‫ألغراض‬‫بحتة‬‫الخادم‬ ‫على‬, ‫إرسالها‬ ‫ٌتم‬ ‫وال‬‫العمٌل‬ ‫إلى‬. void setVersion(int version)/int getVersion():‫عهى‬ ‫حصول‬ ‫أجم‬ ‫من‬ ‫انطريقتان‬ ‫واإلصدار‬ ‫انكوكيز‬ ‫إصدار‬‫االفتراضي‬‫هو‬0,‫اإلصدار‬1‫واسع‬ ‫بشكل‬ ً‫ا‬‫مدعوم‬ ‫لٌس‬. ‫الكوكي‬ ‫جلسة‬ ‫بين‬ ‫الفرق‬‫ز‬(Session Cookies)‫الكوكي‬ ‫و‬‫ز‬‫المستمر‬(Persistent Cookies): ‫الكوكٌز‬ ‫بعمر‬ ‫إال‬ ‫االثنان‬ ‫بٌن‬ ‫فرق‬ ‫ٌوجد‬ ‫ال‬‫بإنهاء‬ ‫تقم‬ ‫لم‬ ‫أنك‬ ‫طالما‬ ‫الكوكٌز‬ ‫ٌبقى‬ ‫ٌكون‬ ‫الكوكٌز‬ ‫جلسة‬ ‫حالة‬ ً‫فف‬ ‫المستعر‬‫عمر‬ ‫بحدٌد‬ ‫تقوم‬ ‫فأنت‬ ‫المستمر‬ ‫الكوكٌز‬ ‫حالة‬ ً‫ف‬ ‫أما‬ ‫لدٌك‬ ‫المستعرض‬ ‫ذاكرة‬ ً‫ف‬ ‫مخزن‬ ‫ٌكون‬ ‫فهو‬ ‫ض‬ ‫وعمر‬ ‫به‬ ‫خاص‬ ‫مكان‬ ً‫ف‬ ‫المستعرض‬ ‫هو‬ ‫بحفظه‬ ‫ٌقوم‬ ‫والذي‬ ‫لدٌك‬ ‫القرص‬ ً‫ف‬ ‫الكوكٌز‬ ‫تخزٌن‬ ‫وٌتم‬ ‫الكوكٌز‬ ‫وما‬ ‫األول‬ ‫مثال‬ ‫رأٌنا‬ ‫األول‬ ‫المثال‬ ً‫ف‬ ً‫ا‬‫حسن‬ ‫سنة‬ ‫من‬ ‫أكثر‬ ‫إلى‬ ‫ثانٌة‬ ‫من‬ ‫ٌكون‬ ً‫الكوك‬‫من‬ ‫؟‬ ً‫الكوك‬ ‫جلسة‬ ‫عن‬ ‫ذا‬ ‫الطرٌقة‬ ‫من‬ ً‫الكوك‬ ‫عمر‬ ‫بحدٌد‬ ‫تقم‬ ‫ال‬ ‫فقط‬ ً‫كوك‬ ‫جلسة‬ ‫كـ‬ ‫ٌعمل‬ ً‫الكوك‬ ‫تجعل‬ ‫أن‬ ‫أجل‬setMaxAge‫فهو‬ ً‫الكوك‬ ‫وسٌصبح‬ ً‫الكوك‬ ‫عمر‬ ‫تحدٌد‬ ‫دون‬ ‫األول‬ ‫المثال‬ ‫أعد‬ ‫إذا‬ ً‫كوك‬ ‫جلسة‬ ‫أنه‬ ‫على‬ ً‫ا‬ٌ‫افتراض‬ ً‫الكوك‬ ‫ٌأخذ‬ ً‫كوك‬ ‫جلسة‬ ‫عن‬ ‫عبارة‬,‫عن‬ ‫سٌكون‬ ‫القادم‬ ‫الدرس‬ ً‫ف‬Session Trackingً‫الكوك‬ ‫عن‬ ‫الفرق‬ ‫ونذكر‬. ‫سهل‬ ‫فهو‬ ‫عنه‬ ‫أشرح‬ ‫لن‬ ً‫ألن‬ ‫الملحقات‬ ً‫ف‬ ‫وأضعه‬ ‫مثال‬ ‫سأعرض‬. ‫أجل‬ ‫من‬ ‫الواجبات‬‫التدريب‬: ‫بٌانات‬ ‫حفظ‬ ‫عن‬ ‫هو‬ ‫األول‬‫ف‬ً‫عند‬ ً‫اإللكترون‬ ‫والبرٌد‬ ً‫والثان‬ ‫األول‬ ‫االسم‬ ‫عن‬ ‫عبارة‬ ‫بسٌط‬ ‫تسجٌل‬ ‫عملٌة‬ ‫ب‬ ‫بالبٌانات‬ ‫ٌحتفظ‬ ‫فسوف‬ ‫تسجلك‬‫ال‬ ‫ـ‬‫كوكٌز‬ ‫الث‬‫السرفلت‬ ‫بزٌارة‬ ‫بها‬ ‫قمت‬ ً‫الت‬ ‫المرات‬ ‫عدد‬ ‫بعد‬ ‫ٌقوم‬ ً‫ان‬‫الكوكٌز‬ ‫استخدام‬ ‫علٌك‬ ‫الثالث‬‫الثالث‬ ‫الدرس‬ ‫الواجب‬ ‫على‬ ‫تعدٌل‬game‫باستبدال‬‫التاغات‬ ‫قٌم‬hidden‫الكوكٌز‬ ‫بـ‬ ‫البٌانات‬ ‫بحفظ‬. ‫الراحمين‬ ‫أرحم‬ ‫يا‬ ‫أجل‬ ‫غير‬ ‫عاجل‬ ً‫ا‬‫نصر‬ ‫اللهم‬