משך: 2 שעות אקדמיות (90 דקות).

מטרת השיעור: הסטודנטים יבינו את מבנה HTTP Request/Response ואת המוסכמות של Methods ו-Status Codes, כבסיס ליחידת ASP.NET Core כולה.

בסוף השיעור הסטודנטים צריכים: לבחור Method נכון לפעולה נתונה, לפרש Status Code בקטגוריה הנכונה (2xx/4xx/5xx), ולהסביר מה ההבדל בין Request ל-Response.

דגש קריטי: זהו שיעור הפתיחה של יחידת ASP.NET Core — אין עדיין קוד C# בכלל, רק הבנת הפרוטוקול. אל תמהרו לקוד, הבסיס הזה חייב להיות מוצק.


מהלך השיעור

חלק בשיעורמשךהערות ודגשים
פתיחה וחיבור5 דקותשאלו: “מה קורה בפועל כשלוחצים על קישור באתר?”
הרעיון: Request/Response20 דקותמבנה, כתבו דוגמה מלאה על הלוח
HTTP Methods20 דקותGET/POST/PUT/DELETE, קשרו לפעולות CRUD מוכרות
Status Codes25 דקותקטגוריות 2xx/4xx/5xx, הדגישו 401 מול 403
הדגמה חיה: DevTools10 דקותפתחו אתר אמיתי, הראו Network tab עם בקשות אמיתיות
תרגול מודרך10 דקותתרגיל 1+2

דגשים להעברת השיעור

  • הדגמה חיה ב-DevTools (טאב Network בדפדפן) על אתר אמיתי היא הרגע שהופך את כל הנושא ממופשט למוחשי — אל תדלגו עליה אם יש זמן.
  • ההבחנה 401 מול 403 היא מלכודת קלאסית בראיונות עבודה — הקדישו לה זמן נפרד: 401 = “אני לא יודע מי אתה” (לא מחובר); 403 = “אני יודע מי אתה, ואתה לא רשאי” (מחובר אך חסר הרשאה).
  • אין עדיין קוד ASP.NET Core בשיעור הזה — זה מכוון. הבנת הפרוטוקול לפני התחביר מונעת “לימוד תחביר בלי להבין למה”.

מושגים

HTTP Request/Response — הודעת בקשה/תשובה בין לקוח לשרת. HTTP Method — GET/POST/PUT/DELETE, מבטא כוונת פעולה. Status Code — קוד תלת-ספרתי שמסכם תוצאה: 2xx/4xx/5xx.


תרגיל חשיבה

שאלת פתיחה: “אם שרת מחזיר תמיד 200 OK — גם כשמשהו נכשל, גם כשמשתמש לא נמצא — מה הבעיה עבור מי שכותב את הלקוח (frontend) שמדבר איתו?”

מהלך: הובילו לתובנה: הלקוח חייב לפרש כל תשובה בעצמו (לקרוא את ה-Body ולנחש אם זו שגיאה) במקום לסמוך על קוד סטטוס אמין. זה מבטל את כל התועלת של Status Codes — הם קיימים בדיוק כדי שלקוח יוכל להחליט מיד, בלי לפרש תוכן חופשי, אם הבקשה הצליחה.

מה המרצה מראה בסוף: פתחו DevTools על אתר אמיתי, בצעו כמה פעולות (ניווט, טעינת עמוד, אולי שליחת טופס), והראו את הבקשות בטאב Network — Method, Status Code, Headers ו-Body האמיתיים, לא רק דוגמה תיאורטית על הלוח.