PracticU

Session object - חלק 2

בלי כתוביותעם כתוביות
PracticU › קורס ASP.NET › Session object - חלק 2
מילון מושגים:
סשן - פרק זמן של פעילות רציפה בין משתמש למערכת, שבו נשמר מידע על מצבו, למשל לאחר התחברות לאתר.
אובייקט - יחידה בתכנות מונחה עצמים שמאגדת נתונים (תכונות) ופעולות (מתודות). נוצר בדרך כלל ממחלקה המשמשת כתבנית.
לקוח - תוכנה או מחשב שפונים לשרת ומבקשים ממנו שירות או מידע, למשל דפדפן שמבקש דף אינטרנט.
דפדפן - תוכנה שמציגה דפי אינטרנט ומריצה את הקוד שבהם, ומאפשרת לגלוש בין אתרים, למשל Chrome או Firefox.
כפתור - רכיב בממשק המשתמש שהמשתמש לוחץ עליו כדי להפעיל פעולה, כמו שליחת טופס או מעבר לדף אחר.
אירוע - התרחשות שהמערכת מזהה ויכולה להגיב לה, כמו לחיצת עכבר, הקשה או סיום פעולה.
פונקציה - קטע קוד בעל שם שמבצע משימה מוגדרת, מקבל ערכי קלט (פרמטרים) ויכול להחזיר תוצאה. מאפשרת לארגן קוד ולהשתמש בו שוב.
תגית - סימון בקוד, למשל ב-HTML, שתוחם רכיב ומגדיר את תפקידו או תכונותיו. גם תווית לסימון וקיטלוג פריטים.

Session object - חלק 2
השיעור הזה ממשיך את נושא ה-Session, ועוסק בשני דברים: איך מנקים את המידע של הלקוח בעת לוג-אאוט, ואיך משתמשים באירועי התחלה וסיום.
ניקוי מידע של משתמש אחד
אפשר לאפס פריט בודד על ידי הכנסת null למפתח של שם המשתמש. בדמו הוכח שאחרי לוג-אאוט הדף הבית נשאר זמין בדפדפן, אבל ברגע שהלקוח לוחץ על כפתור או מתבצע אירוע Page_Load, הוא מופנה שוב לדף הלוגין.
Session.Abandon
הפונקציה Session.Abandon() מוחקת את כל המידע בסשן הנוכחי, ולא רק פריט אחד. זו הדרך המתאימה לנקות את הסשן כולו בזמן לוג-אאוט. בדמו נבדק שאחרי Abandon הכניסה לדף הבית מופנית ללוגין, גם אחרי שהלקוח כבר ראה את דף הבית בדפדפן.
זמן החיים
את זמן החיים של הסשן (ברירת מחדל 20 דקות) משנים בקובץ web.config, בתגית sessionState בתוך system.web. המרצה מדגים הגדרה של דקה אחת כדי לראות את התוצאה מהר.
שימו לב
בדיקת המשתמש צריכה להתבצע בתוך אירוע Page_Load, ולא רק בזמן לחיצה. אחרת הדף עשוי להופיע לזמן קצר לפני ההפניה.
בקצרה: לניקוי פריט אחד מכניסים null, ולניקוי כל הסשן קוראים ל-Abandon.
השיעור הבא בקורס: Application object

פרקי ההרצאה: Session object - חלק 2

  1. 00:00

    התנתקות והפניה לדף הכניסה

  2. 00:30

    איפוס פרטי המשתמש בסשן

  3. 01:09

    הפונקציה Abandon למחיקת כל הסשן

  4. 01:58

    מתי כדאי לנטוש את הסשן לגמרי

תמלול ההרצאה: Session object - חלק 2

הטקסט המלא של הדקות הראשונות בהרצאה «Session object - חלק 2» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:08

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

  2. 00:38

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

  3. 01:09

    יכול להיות שאני רוצה לאפס את כל הסשן, או למחוק את כל מה שיש בסשן. בשביל להצליח למחוק את כל מה שיש בסשן, קיימת לי פונקציה שנקראת אבנדון, כלומר נטישה.

  4. 01:22

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

  5. 01:33

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

  6. 02:10

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

  7. 02:19

    זה היה אובייקט סשן שמשרת לקוח מסוים. כל לקוח יש לו אובייקט סשן שמשרת אך ורק אותו. הסשן פעיל למשך 20 דקות כברירת מחדל, אלא אם כן שינינו את הזמן

לקורס המלא: קורס ASP.NET אונליין

ההרצאה הקודמת: Session object - חלק 1

ההרצאה הבאה: Application object

הרצאות קשורות מקורסים אחרים

  • Object Serialization
  • המחלקה Object
  • Powershell object
  • חטיפה של HTTP Session

קורסים נוספים במסלול

  • קורס Entity Framework Core - עבודה עם מסד נתונים בדוט-נט
  • קורס דוט-נט - NET Core. - עם Rest API
  • קורס MVC
  • קורס Git ו-GitHub עם Visual Studio