curl-ის კონვერტაცია Java-ში

გარდაქმენით curl ბრძანებები Java კოდად თანამედროვე HttpClient API-ს გამოყენებით. curl2code მუშაობს მთლიანად თქვენს ბრაუზერში WebAssembly-ის მეშვეობით — მონაცემები არ ტოვებს თქვენს მოწყობილობას. Kotlin-ში დეველოპმენტისთვის სცადეთ ჩვენი curl to Kotlin კონვერტორი. C# (.NET)-ისთვის იხილეთ curl to C#. ქვემოთ მოცემულია გამოსაყენებლად მზა Java მაგალითები.

როგორ დავაკოპიროთ curl ბრაუზერიდან

  1. 1

    გახსენით DevTools

    დააჭირეთ F12-ს ან Ctrl+Shift+I ბრაუზერის დეველოპერის ხელსაწყოების გასახსნელად.

  2. 2

    გადადით Network ტაბზე

    დააწკაპუნეთ Network ტაბს და შეასრულეთ მოქმედება, რომელიც იწვევს HTTP მოთხოვნას.

  3. 3

    დააკოპირეთ როგორც cURL

    დააწკაპუნეთ მოთხოვნას მარჯვენა ღილაკით → CopyCopy as cURL. შემდეგ ჩასვით ზემოთ.

ხშირად დასმული კითხვები

რა არის Java HttpClient?

Java-ს HttpClient (შემოღებული Java 11-ში) არის თანამედროვე, ჩაშენებული HTTP კლიენტი, რომელიც ანაცვლებს მოძველებულ HttpURLConnection-ს. ის მხარს უჭერს HTTP/2-ს, ასინქრონულ მოთხოვნებს, WebSocket-ს და fluent builder API-ს. გარე დამოკიდებულებები არ არის საჭირო. curl2code ასევე მხარს უჭერს OkHttp, Jsoup და HttpURLConnection-ს.

HttpClient vs OkHttp vs HttpURLConnection — რომელი გამოვიყენო?

HttpClient (Java 11+) არის თანამედროვე სტანდარტი — გამოიყენეთ ის ახალი პროექტებისთვის. OkHttp არის დახვეწილი, ფართოდ გამოიყენება Android-ში, აქვს ინტერცეპტორები და connection pooling. HttpURLConnection მუშაობს Java-ს ყველა ვერსიაზე, მაგრამ ვრცელია. Android/Kotlin-ისთვის იხილეთ ჩვენი curl to Kotlin converter. მსგავსი მიდგომისთვის სცადეთ curl to C#.

როგორ ვმართოთ ავტორიზაცია Java-ში?

დააყენეთ Authorization ჰედერი: request.header("Authorization", "Bearer " + token). Basic ავტორიზაციისთვის დააკოდირეთ Base64.getEncoder().encodeToString((user + ":" + pass).getBytes()). HttpClient ასევე მხარს უჭერს Authenticator-ს მონაცემების ავტომატური მართვისთვის.

როგორ გავაგზავნოთ multipart form data Java-ში?

Java 11+ HttpClient საჭიროებს multipart body-ს ხელით აწყობას boundary სტრინგებით. გამოიყენეთ HttpRequest.BodyPublishers.ofString() ხელით ფორმატირებული ნაწილებით. OkHttp ამარტივებს ამას MultipartBody.Builder-ით. curl2code აგენერირებს შესაბამის კოდს თქვენ მიერ არჩეული Java ბიბლიოთეკისთვის.

როგორ ვმართოთ HTTP შეცდომები Java-ში?

HttpClient-თან შეამოწმეთ response.statusCode() ყოველი მოთხოვნის შემდეგ — ის არ წარმოქმნის გამონაკლისს HTTP შეცდომებზე. მოათავსეთ try/catch ბლოკში IOException (ქსელი) და InterruptedException (ასინქრონული) შეცდომებისთვის. OkHttp წარმოქმნის IOException-ს შეცდომებისას და გთავაზობთ response.isSuccessful()-ს სტატუსის შესამოწმებლად.

როგორ გავაკეთოთ ასინქრონული HTTP მოთხოვნები Java-ში?

HttpClient გთავაზობთ sendAsync() მეთოდს, რომელიც აბრუნებს CompletableFuture-ს: client.sendAsync(request, BodyHandlers.ofString()).thenApply(HttpResponse::body). გამოიყენეთ thenAccept(), thenCompose() ან CompletableFuture.allOf() პარალელური მოთხოვნებისთვის. OkHttp იყენებს enqueue()-ს Callback ინტერფეისით.

როგორ დავაყენოთ თაიმაუტები 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 ფლაგებს.

როგორ გავაგზავნოთ POST მოთხოვნა JSON ტანით Java ენაზე?

გადაიყვანეთ curl POST ბრძანება, როგორიცაა curl -X POST -H "Content-Type: application/json" -d "{"key":"value"}" URL, Java ენაზე curl2code გამოყენებით. გენერირებული კოდი იყენებს HttpRequest.newBuilder().POST(BodyPublishers.ofString(jsonString)).build(). curl2code ავტომატურად ამოიცნობს -d/--data ფლაგებს JSON კონტენტით და ადგენს შესაბამის Content-Type ჰედერს HttpClient კოდში.

როგორ დავამატოთ Bearer token ავტორიზაცია Java ენაზე?

მიაწოდეთ curl -H "Authorization: Bearer YOUR_TOKEN" URL ბრძანება curl2code ხელსაწყოს და ის დააგენერირებს HttpClient კოდს ავტორიზაციის ჰედერით: .header("Authorization", "Bearer YOUR_TOKEN"). curl2code ამოიცნობს Bearer ტოკენებს როგორც -H "Authorization: Bearer ...", ისე --oauth2-bearer ფლაგებიდან. Basic auth-ისთვის გამოიყენეთ -u user:pass.

როგორ განვსაზღვროთ Content-Type ჰედერი Java ენაზე?

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-სთან აკავშირებს.

სასარგებლო ბმულები

curl სახელმძღვანელოები

curl-ის კონვერტაცია სხვა ენებზე