HttpPost ব্যবহার করে POST Request পাঠানো

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

Apache HTTP Client ব্যবহার করে HttpPost ব্যবহার করে একটি POST request পাঠানোর উদাহরণ নিচে দেওয়া হলো। এটি জাভা প্রোগ্রামিং ভাষায় লেখা।

এই উদাহরণে, আমরা একটি নির্দিষ্ট URL-এ ডেটা পাঠাব এবং সার্ভারের কাছ থেকে রেসপন্স গ্রহণ করব।


কোড উদাহরণ:

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

public class ApacheHttpClientPostExample {
    public static void main(String[] args) {
        // HTTP ক্লায়েন্ট তৈরি
        try (CloseableHttpClient httpClient = HttpClients.createDefault()) {
            
            // POST Request এর URL
            String url = "https://example.com/api";

            // HttpPost অবজেক্ট তৈরি
            HttpPost postRequest = new HttpPost(url);

            // JSON বা অন্য ধরনের ডেটা পাঠানোর জন্য কন্টেন্ট সেট করা
            String json = "{ \"name\": \"John\", \"age\": 30 }";
            StringEntity entity = new StringEntity(json);
            
            // Request Content-Type সেট করা
            postRequest.setEntity(entity);
            postRequest.setHeader("Accept", "application/json");
            postRequest.setHeader("Content-Type", "application/json");

            // POST Request পাঠানো এবং Response গ্রহণ করা
            HttpResponse response = httpClient.execute(postRequest);

            // Response থেকে স্ট্যাটাস কোড এবং কন্টেন্ট নেওয়া
            int statusCode = response.getStatusLine().getStatusCode();
            System.out.println("Response Code: " + statusCode);

            HttpEntity responseEntity = response.getEntity();
            if (responseEntity != null) {
                String responseBody = EntityUtils.toString(responseEntity);
                System.out.println("Response Body: " + responseBody);
            }

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

গুরুত্বপূর্ণ বিষয়:

  1. HttpPost ক্লাস:
    এটি POST request তৈরি ও পরিচালনার জন্য ব্যবহৃত হয়।
  2. StringEntity:
    এটি এমন ডেটা ধারণ করে যা POST বডিতে পাঠানো হবে। সাধারণত JSON বা XML ডেটা পাঠাতে ব্যবহৃত হয়।
  3. HttpClients.createDefault():
    একটি ডিফল্ট HTTP ক্লায়েন্ট তৈরি করে।
  4. Headers সেট করা:
    • Accept: সার্ভার থেকে কী ধরনের রেসপন্স প্রত্যাশা করছেন।
    • Content-Type: পাঠানো ডেটার ফরম্যাট।
  5. EntityUtils.toString():
    Response ডেটা String আকারে পড়ে।

Dependency (Maven):

Apache HTTP Client ব্যবহার করার জন্য Maven-এর pom.xml ফাইলে নিচের dependency যোগ করুন:

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.5.13</version>
</dependency>

আউটপুট:

যদি POST request সফল হয়, তাহলে এটি এরকম আউটপুট দিতে পারে:

Response Code: 200
Response Body: { "message": "Data received successfully" }

যদি কোনও অংশে সমস্যা হয় বা আপনাকে নির্দিষ্ট ডেটা হ্যান্ডলিং নিয়ে সাহায্য প্রয়োজন, জানাতে পারেন।

common.content_added_by
টপ রেটেড অ্যাপ

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

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

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