כתיבת תגובה
שיעור 24 מתוך 47 בקורס עבודה עם רשתות דרך הטרמינל של Coddy.
קראת הרבה תגובות. עכשיו כתוב אחת.
nc -l מאזין בפורט, וכל מה שמוזן לקלט שלו נשלח ללקוח הראשון שמתחבר. כך אתה הופך לשרת, בלי שמעורב בכך שרת אינטרנט בכלל:
printf 'HTTP/1.1 200 OK\r\nContent-Type: text/plain\r\n\r\nhand written' | nc -l -p 9114 &שים לב למה שיש כאן: שורת מצב, כותרת אחת, שורה ריקה ואז גוף. בדיוק המבנה שקראת עליו, מוקלד ידנית.
עכשיו כל דבר שמדבר HTTP יקבל את זה. הפנה את curl לפורט והוא ידווח על 200 רגיל לחלוטין עם גוף מסוג text/plain, כי זה כל מה ששרת אינטרנט עושה: כותב טקסט במבנה הזה.
הטריק הזה שימושי באמת בעבודה. כשאתה צריך לראות מה משהו שולח אליך, הצב nc -l בדרכו וקרא את הבקשה שהוא שולח.
אתגר
מומחההיה השרת, באופן ידני.
השתמשו ב-nc -l בפורט 9114, והגישו תגובה ששורת הסטטוס שלה היא HTTP/1.1 200 OK, עם כותרת Content-Type: text/plain וגוף שמכיל בדיוק את hand written. לאחר מכן אחזרו אותה באמצעות curl והדפיסו את הגוף.
הפלט הצפוי:
hand writtenהשתמשו ב-
printfעם סיומות שורה\r\n, וזכרו את השורה הריקה לפני הגוף.
נסו בעצמכם
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה עבודה עם רשתות דרך הטרמינל
תרגלו בעצמכם: Terminal אונליין