ובכן
, ראינו את הדרך עד כה בה מועברים נתונים
מתוכנה מסויימת ע"ג מחשב מסויים ע"ג הרשת
לעבר קצה שני. ראינו כי TCP/IP מטפל בניווט ברשת בצורה טובה למדיי. בכל
אופן , דפדפנים ושרתים זקוקים להעביר מידע רב
מהנדרש עבור רק ניווטי רשת.
לדוגמא
, דפדנים ושרתים חייבים לתמוך בהחלפת מסמכים (קבצי
מולטימדיה כגון:תמונות, טקסט , אודיו וכו').
בכדי לבצע זאת , דפדפנים ושרתים חייבים לדבר
בפרוטוקול משלהם על מנת לאפשר החלפות מידע
אלו ולצורך קבלת מידע עצמי על קבצים אלו.
בפרט
, דפדפנים ושרתים מדברים בפרוטוקול HTTP.
בזמן שפרוטוקול TCP/IP
מניע את האינטרנט , פרוטוקול HTTP
מניע את ה WEB.
HTTP
הינו חסר-מצב , פרוטוקול מסוג "בקשה\תגובה"
המציין את האמצעים לצורך התעבורה ואת התהליך
לצורך תחזוקה ואינטגרציה של קבצי המולטימדיה
הללו. הוא מבצע זאת בעזרת MIME(Multipurpose
Internet Mail Extensions)
- אשר מתאר את אמצעי ההעברה ואת תצורת קבצי
המולטימדיה.
הרשת
(WEB)
מורכבת ממיליוני קבצי קישור (hyperlinked
files). כל אחד
מקבצים אלו יכול לכלול קישורים המצביעים
לקבצים אחרים ברשת. מכיוון שהרשת רגילה
להעביר קבצים מכל הסוגים (אודיו , וידאו , טקסט
וכו') , דפדפנים ושרתים זקוקים לדרך להגדיר מהו
הדבר אשר מקושר ל… ומועבר בשליחה.
על
מנת לבצע כן , HTTP
משתמש בכותרות MIME
על מנת לציין את התוכן של כל קובץ המועבר.
הכותר (header)
יציין את סוג הקובץ.
להלן
דוגמאות לסוגי MIME
ולתת-סוגים בטבלה הבאה:
MIME Type
MIME Subtype
Application
msword
Application
pdf
Audio
aif
Audio
mpeg
Image
gif
Image
jpeg
Image
bmp
Multipart
form-data
Multipart
mixed
Text
html
Text
plain
הרשימה
כמובן חלקית בלבד , ולמעשה שרתי WEB
ודפדפנים יכולים להרחיב בקלות את מפרט ה MIME
שלהם ולהוסיף סוגי MIME
חדשים. כל שעליך לעשות הוא לוודא כי השרת
מתוחל להוציא את הסוג החדש ושהדפדפנים
מתוחלים לקבלת הסוג החדש.
על
מנת לגרום לדפדפן להבין את הסוג החדש בד"כ
נשתמש בפונקציה הנמצאת ב אפשרויות או ב קביעת
עדיפויות (preferences settings)
בדפדפן עצמו. להלן דוגמא הלקוחה מהדפדפן Netscape
:
סוגי
ה MIME
מצויינים כחלק מ כותר ה
(HTTP herader)
אשר מגדיר מידע עצמי על המסמך. סוגי MIME
מצויינים בשדה ה Content-type.
לכן אם שרת WEB רצה לשלוח מסמך מסוג MIME…
|
מלבד
ציון סוג ה MIME
, כותר ה HTTP
מכיל גם מידע חשוב נוסף הכולל:
Accept: מציין אלו סוגים של פלט מדיה הלקוח מוכן לטפל. לעיתים קרובות יציין הלקוח מספר סוגים של מדיה אשר הוא יכול לטפל בהם כפי שמופיע בדוגמא הבאה:
|
כמו כן, יתכן ודפדפן WEB עשוי להצהיר כי הוא מסוגל לטפל בכל סוג media שהוא ע"י השימוש בשורה:
|
Authorization:
מציין האם למשתמש רשות לגשת לאזור מאובטח.
Content-encoding:
מציין שגוף ההודעה מוצפן , דחוס או מקודד.
Content-type:
מציין את סוג המדיה של המידע בגוף ההודעה.
Content-length:
מציין את מספר הבתים בגוף ההודעה עבור בקשות
הכוללות גוף הודעה.
Date:
מציין את התאריך והזמן של הבקשה אם לבקשה יש
גוף הודעה.
From:
מספק כתובת אי-מייל של המשתמש בצד הלקוח אם
מידע זה זמין.
If-modified-since:
אומר לשרת לא לטפל בבקשה אם המסמך לא השתנה
מאז תאריך מסויים.
Mime-version:
מציין את גירסת ה MIME
אשר בה השתמשו לצורך ייצור גוף ההודעה.
Pragma:
מכיל כל מידע נוסף אשר הלקוח רוצה לציין עבור
השרת.
Referer:
מציין את ה URL
של העמוד בו הבקשה נוצרה ( כותר בקשה זו מאויית
לא כהלכה בפרוטוקול עצמו).
User-agent:
מציין את השם ומספר הגירסא של דפדפן ה WEB
אשר יצר את הבקשה.