קידוד טפסים
שיעור 34 מתוך 47 בקורס עבודה עם רשתות דרך הטרמינל של Coddy.
כשמשתמשים ב־-d, curl מוסיף כותרת שמתארת את הפורמט של גוף הבקשה:
Content-Type: application/x-www-form-urlencodedהשם הארוך הזה הוא הפורמט שבו טפסי HTML השתמשו תמיד: זוגות key=value שמחוברים באמצעות &. השרת קורא את הכותרת הזאת ויודע לפצל את גוף הבקשה לפי התווים האלה.
מה שמעלה את השאלה המתבקשת: מה אם ערך מכיל & או =? צריך לקודד אותו, ולכתוב אותו כסימן אחוז ושתי ספרות הקסדצימליות. רווח הופך ל־%20 או ל־+, וסימן אמפרסנד הופך ל־%26.
--data-urlencode מבצע את קידוד התווים המיוחדים בשבילך, וכדאי להשתמש בו עבור כל דבר שאדם הקליד. שליחת קלט גולמי של משתמש באמצעות -d רגיל היא הסיבה לכך ששדות נקטעים באופן מסתורי בתו האמפרסנד הראשון.
אתגר
קשהאשר את הכותרת ש-curl בוחר עבורך.
- הפעל את מאזין הלכידה ביציאה 9124
- שלח POST עם
a=1באמצעות-d - הצג את שורת Content-Type מתוך
req.txt
פלט צפוי:
Content-Type: application/x-www-form-urlencodedהתאם ללא הבחנה בין אותיות גדולות לקטנות, ועגן לתחילת השורה.
נסו בעצמכם
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה עבודה עם רשתות דרך הטרמינל
תרגלו בעצמכם: Terminal אונליין