cURL

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

cURL הוא פרויקט תוכנה הנותן יכולת להעברת מידע באמצעות מגוון פרוטוקולים, וחושף לשם כך ממשק שורת פקודה. פרויקט cURL מייצר שני מוצרים: libcurl ו-curl.[1] הוא הופץ לראשונה בשנת 1997.

CURL
מפתחדניאל סטנברג עריכת הנתון בוויקינתונים
מחזור חיים11 בנובמבר 1996 – הווה (27 שנים) עריכת הנתון בוויקינתונים
גרסה אחרונה8.8.0 (22 במאי 2024) עריכת הנתון בוויקינתונים
מערכת הפעלהMicrosoft Windows, macOS, גנו/לינוקס, מערכת הפעלה מסדרת BSD עריכת הנתון בוויקינתונים
נכתבה בשפותC עריכת הנתון בוויקינתונים
סוג רישיוןרישיון Curl עריכת הנתון בוויקינתונים
קוד מקורhttps://github.com/curl/curl עריכת הנתון בוויקינתונים
curl.se
לעריכה בוויקינתונים שמשמש מקור לחלק מהמידע בתבנית
ממשק שורת הפקודה של cURL

שם הפרויקט מגיע מclient URL, כלי צד לקוח לקישורים. ניתן לקריאה גם כ"see URL", "ראה קישור". ישנם גם ראשי תיבות בדיעבד רקורסיביים,Curl URL Request Library.[2]

libcurl היא תוכנת לקוח חינמית המעבירה מידע דרך פרוטוקולים התומכים ב-URL. היא תומכת ב-FTPS,‏ Gopher,‏ HTTP,‏ HTTPS,‏ SCP,‏ SFTP,‏ TFTP,‏ Telnet,‏ DICT (אנ'),‏ LDAP,‏ LDAPS,‏ IMAP,‏ POP3,‏ SMTP ו RTSP.

הספרייה תומכת בטכנולוגיות הבאות: HTTPS,‏ HTTP POST,‏ HTTP PUT,‏ העלאת מידע ב-FTP,‏ Kerberos,‏ HTTP העלאה מבוססת טפסים,‏ שירותי פרוקסי,‏ cookies,‏ זיהוי "user-plus-password",‏ חידוש העברה שנקטעה, ומינהור פרוקסי HTTP ‏(HTTP proxy tunneling).

הספרייה פועלת בפלטפורמות רבות, ניתן להשתמש בה במערכות הפעלה הבאות: Solaris,‏ NetBSD,‏ FreeBSD,‏ OpenBSD,‏ Darwin,‏ HPUX,‏ IRIX,‏ AIX,‏ Tru64,‏ Linux,‏ UnixWare,‏ HURD,‏ Windows,‏ Symbian,‏ AmigaOS,‏ OS/2,‏ BeOS,‏ Mac OS X,‏ Apple iOS,‏ Android,‏ Ultrix,‏ QNX Neutrino,‏ BlackBerry Tablet OS ו-BlackBerry 10,‏ OpenVMS,‏ RISC OS,‏ Novell NetWare,‏ DOS ועוד.

היא תומכת גם ב-IPv6.

שירותי תעבורה מאובטחת של מידע ב-TLS נתמכים דרך: OpenSSL,‏ GnuTLS,‏ NSS,‏ wolfSSL,‏ BearSSL, ‏ mbed TLS,‏ QSOSSL על IBM i,‏ Secure Transport על OS X, וiOS, ‏rustls‏ וכן SChannel על מערכות Windows.[3]

curl היא תוכנה המפעילה ממשק שורת פקודה כדי לקבל ולשלוח קבצים עם שימוש ב-URL. התוכנה משתמשת בספריית libcurl של אותו פרוייקט, וחושפת את היכולות של הספרייה דרך ממשק פשוט ללא צורך לכתוב קוד. כתוצאה מכך היא תומכת ברוב הפרוטוקולים שהספרייה מממשת, כגון: HTTP,‏ HTTPS,‏ FTP,‏ FTPS,‏ SCP,‏ SFTP,‏ TFTP,‏ LDAP,‏ LDAPS,‏ DICT,‏ TELNET,‏ FILE,‏ IMAP,‏ POP3,‏ SMTP ו RTSP (ארבעת האחרונים רק מגרסאות 7.20.0 או מאז 9 בפברואר 2010).

דוגמאות

עריכה

השימוש הטריוויאלי בתוכנה כולל הקלדה של מילת המפתח curl ולאחריה כתובת ה-URL.דוגמה לפקודה שתביא את דף הבית של האתר example.com:

curl www.example.com

curl מוציא כברירת מחדל את הפלט להתקן הפלט הסטנדרטי (בדרך כלל חלון הטרמינל). לכן הפקודה שלעיל, ברוב המערכות תציג את קוד המקור של האתר www.example.com בטקסט בחלון הטרמינל.

כדי לכתוב את הפלט לקובץ בשם example.html, יש להשתמש בדגל o-:

curl -o example.html www.example.com

בזמן הורדת המידע curl יציג עקומת התקדמות אך לא יציג את העקומה כאשר הוא מתכונן להצגת המידע כדי שלא יפריע להצגת המידע.

כדי לשמור קובץ באותו שם שהוא מופיע האתר יש להשתמש ב O-:

curl -O www.example.com/example.html

אם הקובץ (example.html) הועבר למיקום חדש (אשר מתאפיין בתשובה עם קוד שגיאה מהסדרה 3xx) אפשר להשתמש בדגל L- שיעקוב אחר ההפניות שמופיעות בשדות הכותרת (headers):

curl -OL www.example.com/example.html

cURL מציע תכונות רבות נוספות כגון שימוש בשרת פרוקסי, אימות משתמש, העלאת קבצים ב FTP, HTTP Post, חיבור TLS, שימוש ב cookies, תכונת file transfer resume להעברות שנותקו במפתיע ועוד.

קישורים חיצוניים

עריכה
מדיה וקבצים בנושא CURL בוויקישיתוף

הערות שוליים

עריכה
  1. ^ What Is cURL, curl.se (האתר הרשמי של cURL)
  2. ^ The Name, everything curl
  3. ^ Does curl work with other SSL libraries?, curl.se