המרת curl ל-Kotlin

curl2code ממיר פקודות curl לקוד Kotlin באמצעות OkHttp. ההמרה מתבצעת בדפדפן שלך דרך WebAssembly לפרטיות מלאה. עבור Java, בדוק את ממיר curl ל-Java. עבור Swift (iOS), ראה curl ל-Swift. להלן דוגמאות Kotlin מעשיות.

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

  1. 1

    פתח את DevTools

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

  2. 2

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

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

  3. 3

    העתק כ-cURL

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

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

מהו Kotlin OkHttp?

OkHttp הוא לקוח HTTP בשימוש נרחב עבור Kotlin ו-Java, שפותח על ידי Square. הוא כולל ניהול מאגר חיבורים (connection pooling), GZIP שקוף, שמירה בתגובה במטמון ותמיכה ב-HTTP/2. הוסיפו עם implementation("com.squareup.okhttp3:okhttp:4.x"). זוהי ספריית ברירת המחדל שבה curl2code משתמש להמרות Kotlin והיא לקוח ה-HTTP הסטנדרטי עבור Android.

OkHttp לעומת Ktor Client לעומת Fuel — במה להשתמש?

OkHttp הוא הסטנדרט בתעשייה, במיוחד עבור Android. Ktor Client מותאם ל-Kotlin עם תמיכה ב-coroutines ויכולת multiplatform. Fuel הוא קל משקל עם DSL נקי של Kotlin. עבור Android, OkHttp (לרוב דרך Retrofit) הוא בחירת ברירת המחדל. להשוואת JVM, ראו את ממיר curl ל-Java.

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

הוסיפו כותרת: request.addHeader("Authorization", "Bearer $token"). עבור אימות Basic: השתמשו בכלי Credentials.basic(user, pass). OkHttp תומך גם בממשק Authenticator לניסיון חוזר אוטומטי עם אישורים בתגובות 401. curl2code מטפל בדגלי -u ו-Bearer באופן אוטומטי.

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

השתמשו ב-MultipartBody.Builder() של OkHttp: .addFormDataPart("file", filename, fileBody) עבור קבצים ו-.addFormDataPart("key", "value") עבור שדות. הגדירו .setType(MultipartBody.FORM). curl2code ממיר דגלי -F לקוד בונה ה-multipart הנכון של OkHttp.

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

בדקו את response.isSuccessful עבור סטטוס 2xx או קראו את response.code. OkHttp זורק IOException בכשלים ברשת. השתמשו ב-runCatching { } של Kotlin או ב-try/catch לטיפול נקי בשגיאות. סגרו תמיד את גוף התגובה עם בלוק .use { } כדי למנוע דליפות משאבים.

איך משתמשים ב-coroutines עם OkHttp?

עטפו קריאות OkHttp חוסמות ב-withContext(Dispatchers.IO) { client.newCall(request).execute() }. או השתמשו בהרחבת suspendCancellableCoroutine עם enqueue() עבור אסינכרוניות אמיתית. ל-Ktor Client יש תמיכה מובנית ב-coroutines. לתבניות אסינכרוניות דומות, ראו curl ל-Swift (async/await).

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

הגדירו בבונה הלקוח: OkHttpClient.Builder().connectTimeout(10, TimeUnit.SECONDS).readTimeout(30, TimeUnit.SECONDS).writeTimeout(30, TimeUnit.SECONDS).build(). עבור ניסיונות חוזרים, הוסיפו interceptor שמבצע ניסיון חוזר בכשל. אלו תואמים ל---connect-timeout ו---max-time של curl.

איך משתמשים ב-proxy עם OkHttp?

הגדירו בבונה הלקוח: OkHttpClient.Builder().proxy(Proxy(Proxy.Type.HTTP, InetSocketAddress("proxy", 8080))).build(). עבור אימות, הוסיפו proxyAuthenticator. OkHttp תומך גם בפרוקסי SOCKS עם Proxy.Type.SOCKS. curl2code ממיר דגלי -x לתצורה זו.

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

המירו פקודת curl POST כמו curl -X POST -H "Content-Type: application/json" -d "{"key":"value"}" URL ל-Kotlin באמצעות curl2code. הקוד שנוצר משתמש ב-RequestBody.create(MediaType.parse("application/json"), json). curl2code מזהה באופן אוטומטי דגלי -d/--data עם תוכן JSON ומגדיר את כותרת Content-Type המתאימה בקוד ה-OkHttp.

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

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

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

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

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

מדריכי curl

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