HttpGet ব্যবহার করে GET Request করা

Java Technologies - অ্যাপাচি এইচটিটিপি ক্লায়েন্ট (Apache HTTP Client) HTTP Request পাঠানো |
147
147

Apache HTTP Client ব্যবহার করে HttpGet দিয়ে একটি HTTP GET অনুরোধ পাঠানোর জন্য নিচে একটি উদাহরণ এবং ব্যাখ্যা দেওয়া হলো।

উদাহরণ: HttpGet দিয়ে GET অনুরোধ করা

import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

public class ApacheHttpGetExample {
    public static void main(String[] args) {
        // HttpClient তৈরি করুন
        CloseableHttpClient httpClient = HttpClients.createDefault();

        // GET অনুরোধের জন্য URL দিন
        String url = "https://jsonplaceholder.typicode.com/posts/1";

        try {
            // HttpGet অবজেক্ট তৈরি করুন
            HttpGet httpGet = new HttpGet(url);

            System.out.println("Executing request: " + httpGet.getRequestLine());

            // অনুরোধ পাঠিয়ে প্রতিক্রিয়া সংগ্রহ করুন
            CloseableHttpResponse response = httpClient.execute(httpGet);

            try {
                // প্রতিক্রিয়া থেকে স্ট্যাটাস কোড পান
                int statusCode = response.getStatusLine().getStatusCode();
                System.out.println("Response Status Code: " + statusCode);

                // প্রতিক্রিয়া থেকে HttpEntity পান
                HttpEntity entity = response.getEntity();

                if (entity != null) {
                    // প্রতিক্রিয়ার কন্টেন্ট স্ট্রিং আকারে পড়ুন
                    String responseBody = EntityUtils.toString(entity);
                    System.out.println("Response Content: " + responseBody);
                }
            } finally {
                // প্রতিক্রিয়া বন্ধ করুন
                response.close();
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                // HttpClient বন্ধ করুন
                httpClient.close();
            } catch (Exception ex) {
                ex.printStackTrace();
            }
        }
    }
}

কোড ব্যাখ্যা

  1. HttpClient তৈরি করা

    CloseableHttpClient httpClient = HttpClients.createDefault();
    
    • HttpClients.createDefault() ব্যবহার করে ডিফল্ট কনফিগারেশনে একটি HTTP ক্লায়েন্ট তৈরি করা হয়েছে।
  2. HttpGet তৈরি করা

    HttpGet httpGet = new HttpGet(url);
    
    • HttpGet অবজেক্ট দিয়ে GET অনুরোধ প্রস্তুত করা হয়েছে।
    • URL সরাসরি HttpGet এর কনস্ট্রাক্টরে পাস করা হয়েছে।
  3. অনুরোধ পাঠানো এবং প্রতিক্রিয়া সংগ্রহ

    CloseableHttpResponse response = httpClient.execute(httpGet);
    
    • httpClient.execute(httpGet) ব্যবহার করে GET অনুরোধ সার্ভারে পাঠানো হয়েছে।
    • এর প্রতিক্রিয়া একটি CloseableHttpResponse অবজেক্টে সংরক্ষণ করা হয়েছে।
  4. প্রতিক্রিয়ার স্ট্যাটাস কোড এবং কন্টেন্ট পড়া
    • স্ট্যাটাস কোড পড়া:

      int statusCode = response.getStatusLine().getStatusCode();
      System.out.println("Response Status Code: " + statusCode);
      

      সার্ভার থেকে প্রাপ্ত HTTP স্ট্যাটাস কোড (200, 404 ইত্যাদি) প্রদর্শন করা হয়েছে।

    • বডি কন্টেন্ট পড়া:

      HttpEntity entity = response.getEntity();
      String responseBody = EntityUtils.toString(entity);
      

      HttpEntity থেকে প্রতিক্রিয়ার ডেটা EntityUtils.toString() এর মাধ্যমে স্ট্রিং আকারে পড়া হয়েছে।

  5. রিসোর্স মুক্ত করা
    • প্রতিক্রিয়া বন্ধ করুন:

      response.close();
      
    • HttpClient বন্ধ করুন:

      httpClient.close();
      

উপকারিতা

  • HttpGet সহজ এবং কার্যকর পদ্ধতি HTTP GET অনুরোধের জন্য।
  • প্রতিক্রিয়ার স্ট্যাটাস কোড এবং ডেটা সহজেই পড়া যায়।
  • JSON, XML বা অন্য ফর্ম্যাটে ডেটা প্রসেস করার জন্য ব্যবহার করা যেতে পারে।

নোট

  • এই উদাহরণে https://jsonplaceholder.typicode.com/posts/1 ব্যবহার করা হয়েছে, যা একটি উন্মুক্ত API।
  • প্রকৃত প্রজেক্টে API নিরাপত্তা এবং অটেনটিকেশন (যেমন টোকেন বা কুকি) ব্যবহার করার প্রয়োজন হতে পারে।
common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion