2.6 פרוטוקול http פתרון
פתרון לתרגילים בנושא HTTP ו-HTTPS:¶
תרגיל 1: מבנה URL¶
שאלה: כתוב את החלקים השונים של ה-URL הבא:
פתרון:
- פרוטוקול:
https - דומיין/כתובת IP:
www.example.com - נתיב:
/search - פרמטר:
q=test
תרגיל 2: בקשת HTTP¶
שאלה: מה מבנה הבקשה של HTTP אם הלקוח שולח בקשה לקבלת דף HTML בעזרת שיטת GET לדומיין www.example.com?
פתרון:
תרגיל 3: הבדל בין HTTP ל-HTTPS¶
שאלה: הסבר את ההבדל העיקרי בין פרוטוקול HTTP לפרוטוקול HTTPS.
פתרון: ההבדל העיקרי בין HTTP ל-HTTPS הוא כי ב-HTTPS יש הצפנה של הנתונים באמצעות פרוטוקול TLS (Transport Layer Security), מה שמבטיח שהתקשורת בין הלקוח לשרת תהיה מאובטחת ומוגנת מפני האזנה או שינוי הנתונים.
תרגיל 4: בקשת POST¶
שאלה: אם נרצה לשלוח נתונים בעזרת בקשת POST לאתר www.example.com, כיצד תיראה הבקשה עם פרמטרים param1=value1 ו-param2=value2?
פתרון:
POST /submit HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0
Content-Type: application/x-www-form-urlencoded
Content-Length: 34
param1=value1¶m2=value2
תרגיל 5: סטטוס קוד 404¶
שאלה: מה המשמעות של קוד סטטוס HTTP 404?
פתרון: המשמעות של קוד סטטוס 404 היא "Not Found" – כלומר, המשאב או הדף המבוקש לא נמצא בשרת.
תרגיל 6: שימוש ב-curl¶
שאלה: כיצד תוכל לשלוח בקשת GET ל-URL https://www.example.com ולראות את כל המידע המפורט על הבקשה והתשובה?
פתרון: עליך להשתמש בפקודה הבאה:
הפקודה curl -v תציג את כל המידע המפורט כולל שורת הבקשה, כותרות הבקשה, כותרות התשובה וגוף התשובה.
תרגיל 7: פרוטוקול HTTPS¶
שאלה: כיצד מתבצע תהליך ההצפנה בפרוטוקול HTTPS?
פתרון: בפרוטוקול HTTPS, התהליך מתבצע בצורה הבאה:
- נוצר חיבור TCP בין הלקוח לשרת.
- לאחר מכן, מתבצע תהליך של הצפנת TLS (Transport Layer Security) שמצפין את חיבור ה-TCP.
- כל התעבורה מעל TCP המוצפן היא HTTP, אך היא מוצפנת.
תרגיל 8: חיבור דפדפן ושרת HTTP¶
שאלה: מה תפקידו של הדפדפן ושל השרת בפרוטוקול HTTP?
פתרון: בפרוטוקול HTTP:
- הלקוח (הדפדפן) שולח בקשות HTTP לשרת על מנת לגשת לדפי אינטרנט.
- השרת מקבל את הבקשות ומחזיר תשובות HTTP הכוללות את התוכן המבוקש (כגון דף HTML, תמונה, או קובץ CSS).
תרגיל 9: סוגי בקשות HTTP¶
שאלה: הסבר את ההבדל בין בקשות GET ו-POST.
פתרון:
- בקשת GET נועדה לשלוף מידע מהשרת, לדוגמה, כדי לקבל דף אינטרנט.
- בקשת POST נועדה לשלוח נתונים לשרת, לדוגמה, כדי לשלוח טופס עם נתונים.
תרגיל 10: HTTP Headers¶
שאלה: מהו תפקידו של ה-Header User-Agent בבקשות HTTP?
פתרון: ה-Header User-Agent מציין את המידע על הדפדפן או הלקוח ששולח את הבקשה, כדי שהשרת ידע איך להחזיר את התשובה בצורה המתאימה למכשיר או דפדפן השימוש.