curl کو Java میں تبدیل کریں
جدید HttpClient API کا استعمال کرتے ہوئے curl کمانڈز کو Java کوڈ میں تبدیل کریں۔ curl2code مکمل طور پر WebAssembly کے ذریعے آپ کے براؤزر میں چلتا ہے — کوئی بھی ڈیٹا آپ کے ڈیوائس سے باہر نہیں جاتا۔ Kotlin ڈویلپمنٹ کے لیے، ہمارا curl to Kotlin کنورٹر آزمائیں۔ C# (.NET) کے لیے، curl to C# دیکھیں۔ نیچے استعمال کے لیے تیار Java مثالیں دی گئی ہیں۔
اپنے براؤزر سے curl کاپی کرنے کا طریقہ
- 1
DevTools کھولیں
اپنے براؤزر کے ڈویلپر ٹولز کھولنے کے لیے F12 یا Ctrl+Shift+I دبائیں۔
- 2
Network ٹیب پر جائیں
Network ٹیب پر کلک کریں اور وہ عمل کریں جو HTTP درخواست کو متحرک کرتا ہے۔
- 3
cURL کے طور پر کاپی کریں
درخواست پر رائٹ کلک کریں ← Copy ← Copy as cURL۔ پھر اسے اوپر پیسٹ کریں۔
اکثر پوچھے جانے والے سوالات
Java HttpClient کیا ہے؟
Java کا HttpClient (جو Java 11 میں متعارف کرایا گیا) ایک جدید، بلٹ ان HTTP کلائنٹ ہے جو پرانے HttpURLConnection کی جگہ لیتا ہے۔ یہ HTTP/2، async درخواستوں، WebSocket، اور ایک فلوئنٹ بلڈر API کو سپورٹ کرتا ہے۔ کسی بیرونی ڈیپینڈینسی کی ضرورت نہیں ہے۔ curl2code متبادل کے طور پر OkHttp، Jsoup، اور HttpURLConnection کو بھی سپورٹ کرتا ہے۔
HttpClient بمقابلہ OkHttp بمقابلہ HttpURLConnection — کون سا استعمال کریں؟
HttpClient (Java 11+) جدید معیار ہے — اسے نئے پروجیکٹس کے لیے استعمال کریں۔ OkHttp پختہ ہے، Android میں بڑے پیمانے پر استعمال ہوتا ہے، جس میں انٹرسیپٹرز اور کنکشن پولنگ شامل ہے۔ HttpURLConnection تمام Java ورژنز پر کام کرتا ہے لیکن طویل ہے۔ Android/Kotlin کے لیے، ہمارا curl to Kotlin converter دیکھیں۔ اسی طرح کے جدید نقطہ نظر کے لیے، curl to C# آزمائیں۔
Java میں توثیق (authentication) کو کیسے سنبھالا جائے؟
Authorization ہیڈر سیٹ کریں: request.header("Authorization", "Bearer " + token)۔ Basic auth کے لیے، Base64.getEncoder().encodeToString((user + ":" + pass).getBytes()) کے ساتھ انکوڈ کریں۔ HttpClient خودکار اسناد کی ہینڈلنگ کے لیے Authenticator کو بھی سپورٹ کرتا ہے۔
Java میں ملٹی پارٹ فارم ڈیٹا کیسے بھیجا جائے؟
Java 11+ HttpClient کو باؤنڈری اسٹرنگز کے ساتھ دستی ملٹی پارٹ باڈی کی تعمیر کی ضرورت ہوتی ہے۔ دستی طور پر فارمیٹ شدہ حصوں کے ساتھ HttpRequest.BodyPublishers.ofString() استعمال کریں۔ OkHttp اسے MultipartBody.Builder کے ساتھ آسان بناتا ہے۔ curl2code آپ کی منتخب کردہ Java لائبریری کے لیے مناسب ملٹی پارٹ کوڈ جنریٹ کرتا ہے۔
Java میں HTTP غلطیوں کو کیسے سنبھالا جائے؟
HttpClient کے ساتھ، ہر درخواست کے بعد response.statusCode() چیک کریں — یہ HTTP غلطیوں پر استثنیٰ (exception) نہیں پھینکتا۔ IOException (نیٹ ورک) اور InterruptedException (async) کے لیے کالز کو try/catch میں لپیٹیں۔ OkHttp ناکامیوں پر IOException پھینکتا ہے اور اسٹیٹس چیک کے لیے response.isSuccessful() فراہم کرتا ہے۔
Java میں async HTTP درخواستیں کیسے کی جائیں؟
HttpClient، sendAsync() فراہم کرتا ہے جو CompletableFuture واپس کرتا ہے: client.sendAsync(request, BodyHandlers.ofString()).thenApply(HttpResponse::body)۔ اسے thenAccept()، thenCompose() کے ساتھ جوڑیں، یا متوازی درخواستوں کے لیے CompletableFuture.allOf() استعمال کریں۔ OkHttp ایک Callback انٹرفیس کے ساتھ enqueue() استعمال کرتا ہے۔
Java HttpClient میں ٹائم آؤٹ کیسے سیٹ کریں؟
کلائنٹ پر سیٹ کریں: HttpClient.newBuilder().connectTimeout(Duration.ofSeconds(10)).build()۔ فی درخواست: request.timeout(Duration.ofSeconds(30))۔ OkHttp، OkHttpClient.Builder().connectTimeout(10, TimeUnit.SECONDS).readTimeout(30, TimeUnit.SECONDS) استعمال کرتا ہے۔
Java میں پراکسی کو کیسے کنفیگر کریں؟
HttpClient کے ساتھ: HttpClient.newBuilder().proxy(ProxySelector.of(new InetSocketAddress("proxy", 8080))).build()۔ OkHttp، Proxy کلاس استعمال کرتا ہے: new OkHttpClient.Builder().proxy(new Proxy(Proxy.Type.HTTP, address))۔ Java، -Dhttp.proxyHost JVM فلیگز کا بھی احترام کرتا ہے۔ curl2code خودکار طور پر -x فلیگز کو تبدیل کرتا ہے۔
Java میں JSON باڈی کے ساتھ POST درخواست کیسے بھیجیں؟
curl2code کا استعمال کرتے ہوئے curl -X POST -H "Content-Type: application/json" -d "{"key":"value"}" URL جیسی curl POST کمانڈ کو Java میں تبدیل کریں۔ تیار کردہ کوڈ HttpRequest.newBuilder().POST(BodyPublishers.ofString(jsonString)).build() استعمال کرتا ہے۔ curl2code خودکار طور پر JSON مواد کے ساتھ -d/--data فلیگز کا پتہ لگاتا ہے اور HttpClient کوڈ میں مناسب Content-Type ہیڈر سیٹ کرتا ہے۔
Java میں Bearer ٹوکن کی اجازت کیسے شامل کریں؟
curl2code کو curl -H "Authorization: Bearer YOUR_TOKEN" URL فراہم کریں اور یہ auth ہیڈر کے ساتھ HttpClient کوڈ تیار کرتا ہے: .header("Authorization", "Bearer YOUR_TOKEN")۔ curl2code دونوں -H "Authorization: Bearer ..." اور --oauth2-bearer فلیگز سے Bearer ٹوکنز کا پتہ لگاتا ہے۔ Basic auth کے لیے، -u user:pass استعمال کریں۔
Java میں Content-Type ہیڈر کیسے سیٹ کریں؟
curl2code curl -H "Content-Type: application/json" URL کو مناسب ہیڈر کے ساتھ HttpClient کوڈ میں تبدیل کرتا ہے: .header("Content-Type", "application/json")۔ -d ڈیٹا کے لیے، curl ڈیفالٹ طور پر application/x-www-form-urlencoded استعمال کرتا ہے؛ -F فارم اپ لوڈز کے لیے، یہ multipart/form-data استعمال کرتا ہے۔ curl2code ہر ایک کو درست HttpClient API کے ساتھ میپ کرتا ہے۔