כיצד להשתמש בנתוני פוסט cURL מהקובץ

How Use Curl Post Data From File



cURL הוא כלי שורת פקודה חינם וקוד פתוח המשמש להעברת נתונים למארח מרוחק או ממנה עם אינטראקציה מינימלית של משתמשים. cURL עובד עם פרוטוקולים ראשוניים כמו HTTP, FTP, SCP ו- SFTP.

הוא מאפשר למשתמשים להעלות ולהוריד נתונים באמצעות פקודות בודדות או סקריפטים bash. הוא מספק גם תכונות כגון אימות משתמשים, מנהור פרוקסי, קורות חיים להורדה, העלאות מבוססות טפסים, אישורי SSL, ועוד הרבה יותר. ניתן לומר בבטחה כי cURL הוא יותר מלקוח HTTP.







הדרכה זו תלווה אותך בפונקציונליות cURL אחת המאפשרת למשתמשים לבצע בקשות הודעה HTTP באמצעות נתוני קבצים.



לפני שנתחיל, הרשה לי להזכיר כי זהו אינו מדריך למתחילים ב- cURL; אתה צריך רמה של ידע קודם, במיוחד ידע בפרוטוקולי רשת, בקשות HTTP ועוד.



לפני שנוכל לצלול באמצעות cURL לביצוע בקשות POST, תן לנו קודם כל להתקין.





כיצד להתקין cURL

ברוב המקרים, תמצא cURL מותקן בהפצות לינוקס גדולות כברירת מחדל. כדי לאשר שיש לך cURL, השתמש בפקודה

תלתל –- עזרה

אם אתה מקבל שגיאה:



-בש: curl:פקודהלא נמצא

יהיה עליך להתקין אותו לפני שתמשיך.

השתמש במנהל החבילות המוגדר כברירת מחדל כדי להשלים את ההתקנה כפי שמוצג בפקודות להלן:

סודו עדכון apt-get

סודו apt-get להתקיןסִלְסוּל

לפני שנדון כיצד להעביר נתוני POST מקובץ עם cURL, הרשה לי לדבר בקצרה על בקשת ה- POST. כרגיל, אם אתם כבר מכירים את זה, אתם מוזמנים לדלג קדימה; אחרת, הישאר במקום.

בקשת פוסט cURL

בקשת ההודעה HTTP היא אחת משיטות הבקשה HTTP/HTTPS הפופולריות ביותר המשמשות לשליחת נתונים למארח מרוחק כדי ליצור או לעדכן משאב.

עַכשָׁיו :

נא לא לבלבל את השיטה עם PUT; למרות שהם די דומים, יש להם הבדלים.

הנתונים שנשלחים באמצעות בקשת POST מאוחסנים בעיקר בגוף הבקשה של בקשת HTTP.

לדוגמה, שקול את בקשת ה- POST שלהלן המשלחת שם משתמש וסיסמה כמו גם את ערכיהם.

הודעה/מוגבל/login.php HTTP/1.1מארח: linuxhint.com סוג תוכן: יישום/x-www-form-urlencodedשם משתמש= linuxhint&סיסמה= סיסמא

כדי לשלוח את בקשת POST לעיל באמצעות cURL, אנו יכולים לציין את הפקודות כ:

סִלְסוּל-איקסהודעה-d שם משתמש= linuxhint&סיסמה= סיסמה https://linuxhint.com/מוגבל/login.php

בפקודה לעיל, השתמשנו באפשרות -d כדי לומר ל- cURL לכלול את כותרות ברירת המחדל, שהיא סוג תוכן: application/x-www-form-urlencoded

האפשרות -X מציינת את שיטת בקשת HTTP לשימוש, במקרה זה, בקשת HTTP POST.

cURL ציין סוג תוכן

במקרים מסוימים, ייתכן שתרצה לציין [במפורש] את סוג התוכן בעת ​​שליחת הבקשה. הישות מסוג תוכן בכותרת מציינת את סוג המדיה של המשאב שאנו שולחים. סוג המדיה ידוע גם בשם סוג MIME.

אם ברצונך ללמוד על סוגי MIME, שקול את המשאב המופיע להלן:

https://linkfy.to/IANA-MIME-Types

כדי לציין את סוג התוכן בבקשה cURL, נוכל להשתמש בדגל -H. לדוגמה, תן לנו לשלוח סוג יישום MIME/JSON.

סִלְסוּל-איקסהודעה-d {שם משתמש: linuxhint, סיסמא: סיסמא} סוג תוכן: יישום/json https://linuxhint.com/מוגבל/login.php

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

כיצד לקרוא נתונים מקובץ

נניח שאתה רוצה לשלוח בקשות בשורת הפקודה באמצעות cURL, אך יש לך את הנתונים לשלוח המאוחסנים בקובץ. תוכל להשתמש ב- Content-Type כדי לציין את סוג המדיה ולאחר מכן להעביר את נתיב הקובץ המכיל את הנתונים. בדוגמה זו, אדגים באמצעות אובייקט JSON.

קובץ JSON (data.json) מכיל את הערכים הבאים:

{
'שם משתמש':'linuxhint',
'סיסמה':'סיסמה'
}

כדי לשלוח נתונים אלה מקובץ JSON, אנו יכולים להשתמש ב- -d ולאחר מכן להעביר את שם הקובץ כפי שמוצג בפקודה להלן:

סִלְסוּל-איקסהודעהסוג תוכן: יישום/json-d @data.json https://linuxhint.com/מוגבל/login.php

תוכל גם להשתמש באפשרות –דאטה-בינארית.

סִלְסוּל-איקסהודעהסוג תוכן: יישום/json-נתונים-בינארי @ /בית/מִשׁתַמֵשׁ/data.json https://linuxhint.com/מוגבל/login.php

תוכל גם להשתמש בקובץ טקסט לשליחת הנתונים; כל מה שאתה צריך לציין הוא סוג התוכן כטקסט/רגיל.

לדוגמה, קובץ טקסט (data.txt) המכיל את הערכים הבאים

שם משתמש= linuxhint&סיסמה= סיסמא

באמצעות הפקודה cURL, פשוט שלח את הבקשה כך:

סִלְסוּל-איקסהודעהסוג תוכן: טקסט/מישור-ddata.txt https://linuxhint.com/מוגבל/login.php

אתה יכול להשתמש בסוגי קבצים אחרים שבהם תוכל להשתמש כגון XML, HTML ועוד רבים אחרים.

סיכום

במדריך זה דנו כיצד לבצע בקשות POST ולהעביר נתונים בפורמטים שונים. זה טוב לזכור שמלבד היותו חזק מאוד, cURL הוא גם גמיש מאוד. הוא יכול לשלב אוסף של אפשרויות בפקודה אחת ליצירת בקשות עוצמתיות. למידע נוסף, אני ממליץ על תיעוד cURL מכיוון שהוא כתוב היטב.

https://curl.se/docs/

תודה שקראת, ותהנה עם cURL.