POST עם -d
שיעור 32 מתוך 47 בקורס עבודה עם רשתות דרך הטרמינל של Coddy.
עד עכשיו, כל בקשה ביקשה משהו. -d שולח משהו במקום זאת:
curl -s -d 'name=ada' http://127.0.0.1:9122/signupברגע שמוסיפים אותו, קורים שני דברים. curl משנה את השיטה מ-GET ל-POST בלי שביקשת, והוא מצרף את מה שנתת לו כגוף הבקשה.
לכן -d לא רק „מוסיף נתונים”, אלא משנה את סוג הבקשה. אם רוצים בקשת POST ללא גוף בכלל, צריך לציין בעצמכם -X POST.
בעוד GET מציב את הפרמטרים שלו בכתובת ה-URL, כך שכולם יכולים לראות אותם ולתעד אותם, POST מציב אותם בגוף הבקשה. זו הסיבה שטפסים עם סיסמאות משתמשים ב-POST: לא משום שהגוף מוצפן — הוא לא — אלא משום שכתובות URL נשמרות בהיסטוריית הדפדפן, ביומני השרת ובכותרות המפנה.
אתגר
מומחהשלחו את בקשת ה-POST הראשונה שלכם וקראו מה השרת קיבל.
- הפעילו את מאזין הלכידה בפורט 9122 (הוא משיב 200 וכותב את הבקשה לתוך
req.txt) - שלחו POST עם
name=adaאלhttp://127.0.0.1:9122/signup - הדפיסו את השורה הראשונה של
req.txt
פלט צפוי:
POST /signup HTTP/1.1הוסיפו ל-curl את
--max-time 3כדי שלא ימתין לנצח, והשליכו את הפלט שלו.
נסו בעצמכם
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה עבודה עם רשתות דרך הטרמינל
תרגלו בעצמכם: Terminal אונליין