Menu
CoddyTech

שליחת JSON

שיעור 35 מתוך 47 בקורס עבודה עם רשתות דרך הטרמינל של Coddy.

רוב ממשקי ה-API כיום מצפים ל-JSON, ולא לקידוד של טופס. שני דברים צריכים להשתנות, ושכחה של הדבר השני היא הטעות הנפוצה ביותר בתחום הזה.

curl -s -H 'Content-Type: application/json' \
     -d '{"name":"ada"}' http://127.0.0.1:9125/users

ראשית, גוף הבקשה הופך ל-JSON. שנית, עליך להצהיר על כך באמצעות כותרת Content-Type, כי אחרת curl עדיין מסמן את גוף הבקשה כנתוני טופס. לאחר מכן השרת מנסה לנתח את ה-JSON כזוגות key=value ודוחה אותו, בדרך כלל עם שגיאת 400.

לכן, כש-API אומר שה-JSON שלך לא תקין והוא נראה לך תקין לחלוטין, בדוק את הכותרת לפני שאתה בודק את ה-JSON.

שים לב גם למירכאות. JSON מלא במירכאות כפולות, לכן תחום את כל גוף הבקשה במירכאות יחידות, וה-shell יניח לו.

challenge icon

אתגר

מומחה

שלח JSON אמיתי והוכח שהוא סומן כראוי.

  1. הפעל את מאזין הלכידה בפורט 9125
  2. שלח POST עם הגוף {"name":"ada"} אל /users, תוך הצהרה שהוא JSON
  3. הדפס את שורת Content-Type מתוך req.txt

הפלט הצפוי:

Content-Type: application/json

נסו בעצמכם

טרמינל
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה עבודה עם רשתות דרך הטרמינל

תרגלו בעצמכם: Terminal אונליין