המרת curl ל-Dart

המר פקודות curl לקוד Dart באמצעות חבילת ה-http. curl2code רץ כולו בדפדפן שלך דרך WebAssembly — המידע שלך נשאר פרטי. עבור Kotlin, נסה את ממיר curl ל-Kotlin. עבור Swift, ראה curl ל-Swift. להלן דוגמאות Dart מוכנות לשימוש עבור Flutter.

איך להעתיק curl מהדפדפן שלך

  1. 1

    פתח את DevTools

    לחץ על F12 או על Ctrl+Shift+I כדי לפתוח את כלי המפתחים של הדפדפן.

  2. 2

    עבור ללשונית Network

    לחץ על לשונית ה-Network ובצע את הפעולה שמפעילה את בקשת ה-HTTP.

  3. 3

    העתק כ-cURL

    לחץ קליק ימני על הבקשה ← CopyCopy as cURL. לאחר מכן הדבק אותה למעלה.

שאלות נפוצות (FAQ)

מהי חבילת ה-http של Dart?

חבילת ה-http היא לקוח ה-HTTP המומלץ עבור Dart ו-Flutter. היא מספקת API פשוט מבוסס Future עבור GET, POST, העלאות multipart וסטרימינג. התקינו עם dart pub add http. היא עובדת בכל פלטפורמות Dart — מובייל, ווב ושרת. curl2code משתמש בה כברירת מחדל להמרות Dart.

http לעומת dio לעומת HttpClient — במה כדאי להשתמש?

http היא פשוטה וקלת משקל — מצוינת לבקשות בסיסיות. dio מוסיפה interceptors, FormData, התקדמות הורדה וביטול. HttpClient (dart:io) היא ברמה נמוכה יותר ומובנית אך מילולית יותר. עבור אפליקציות Flutter הזקוקות ל-interceptors, בחרו ב-dio. ללקוחות מובייל דומים, ראו curl ל-Kotlin או curl ל-Swift.

איך מטפלים באימות ב-Dart?

העבירו כותרות לבקשה: http.get(url, headers: { "Authorization": "Bearer $token" }). עבור אימות Basic, בצעו קידוד עם base64Encode(utf8.encode("$user:$pass")). curl2code ממיר דגלי -u ו--H 'Authorization' לקוד Dart עם כותרות מוגדרות כראוי.

איך שולחים נתוני multipart form ב-Dart?

השתמשו ב-http.MultipartRequest: צרו את הבקשה, הוסיפו שדות עם request.fields['key'] = 'value', וקבצים עם request.files.add(await http.MultipartFile.fromPath('file', path)). לאחר מכן שלחו עם request.send(). curl2code ממיר דגלי -F לתבנית זו.

איך מטפלים בשגיאות HTTP ב-Dart?

חבילת ה-http אינה זורקת שגיאות על שגיאות HTTP — בדקו את response.statusCode ידנית. עטפו קריאות ב-try/catch עבור SocketException (שגיאות רשת) ו-TimeoutException. השתמשו ב-http.Client עם close() לניקוי משאבים תקין באפליקציות ארוכות טווח.

איך משתמשים ב-async/await עם Dart HTTP?

כל מתודות ה-HTTP ב-Dart מחזירות Future — השתמשו ב-final response = await http.get(Uri.parse(url)). ה-async/await של Dart מובנה בשפה. לבקשות מקביליות, השתמשו ב-Future.wait([request1, request2]). לתבניות אסינכרוניות דומות, ראו curl ל-TypeScript או curl ל-Swift.

איך מגדירים פסקי זמן ב-Dart?

השתמשו במתודת .timeout() על כל Future: http.get(url).timeout(Duration(seconds: 30)). זה זורק TimeoutException כשחורגים מהזמן. לשליטה רבה יותר, צרו http.Client והגדירו דרך ה-HttpClient הבסיסי מ-dart:io עם connectionTimeout.

איך משתמשים ב-proxy ב-Dart?

השתמשו ב-HttpClient מ-dart:io: HttpClient()..findProxy = (uri) => 'PROXY proxy:8080'. עבור חבילת ה-http, צרו IOClient מותאם אישית העוטף את ה-HttpClient המוגדר. Dart מכבד גם משתני סביבה HTTP_PROXY ו-NO_PROXY.

איך שולחים בקשת POST עם גוף JSON ב-Dart?

המירו פקודת curl POST כמו curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL ל-Dart באמצעות curl2code. הקוד שנוצר משתמש ב-http.post(uri, body: jsonEncode(data), headers: {'Content-Type': 'application/json'}). curl2code מזהה באופן אוטומטי דגלי -d/--data עם תוכן JSON ומגדיר את כותרת Content-Type המתאימה בקוד ה-http.

איך מוסיפים אימות Bearer token ב-Dart?

העבירו את curl -H "Authorization: Bearer YOUR_TOKEN" URL ל-curl2code והוא יפיק קוד http עם כותרת האימות: headers: {'Authorization': 'Bearer YOUR_TOKEN'}. curl2code מזהה Bearer tokens גם מדגלי -H "Authorization: Bearer ..." וגם מדגלי --oauth2-bearer. עבור Basic auth, השתמשו ב--u user:pass.

איך מגדירים כותרת Content-Type ב-Dart?

curl2code ממיר את curl -H "Content-Type: application/json" URL לקוד http עם הכותרת המתאימה: headers: {'Content-Type': 'application/json'}. עבור נתוני -d, curl משתמש כברירת מחדל ב-application/x-www-form-urlencoded; עבור העלאות טפסים עם -F, הוא משתמש ב-multipart/form-data. curl2code ממפה כל אחד מהם ל-API הנכון של http.

קישורים שימושיים

מדריכי curl

המרת curl לשפות אחרות