CookieStore ব্যবহার করে Apache HTTP Client-এ Cookies ম্যানেজ করার জন্য আপনাকে HttpClient-এ Cookie handling কনফিগার করতে হবে। CookieStore
একটি ইনটারফেস যা HTTP ক্লায়েন্টের মধ্যে কুকি সঞ্চয় এবং পুনরুদ্ধারের জন্য ব্যবহৃত হয়। এটি ক্লায়েন্টের কুকি সংগ্রহ সঞ্চয় করে, যাতে সার্ভার থেকে প্রাপ্ত কুকি-গুলি পরবর্তী রিকোয়েস্টে ব্যবহার করা যায়।
প্রথমে, যদি আপনার প্রোজেক্টে Maven ব্যবহৃত হয়, তবে আপনাকে Apache HTTP Client-এর জন্য প্রয়োজনীয় ডিপেনডেন্সি যুক্ত করতে হবে।
<dependency>
<groupId>org.apache.httpcomponents.client5</groupId>
<artifactId>httpclient5</artifactId>
<version>5.4</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents.core5</groupId>
<artifactId>httpcore5</artifactId>
<version>5.4</version>
</dependency>
Apache HTTP Client-এ CookieStore ব্যবহার করে কুকি ম্যানেজমেন্টের জন্য আপনাকে CookieStore সেট করতে হবে এবং HttpClient
কনফিগারেশনের মধ্যে এটি সংযুক্ত করতে হবে। এটি কুকি সংগ্রহ করার জন্য এবং রিকোয়েস্টে কুকি পাঠানোর জন্য ব্যবহৃত হয়।
import org.apache.hc.client5.http.impl.classic.HttpClients;
import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;
import org.apache.hc.client5.http.impl.classic.methods.HttpGet;
import org.apache.hc.client5.http.impl.classic.CloseableHttpResponse;
import org.apache.http.impl.client.CookieStore;
import org.apache.http.impl.client.BasicCookieStore;
import org.apache.http.impl.client.RequestConfig;
import org.apache.http.util.EntityUtils;
import java.io.IOException;
public class HttpClientWithCookieStore {
public static void main(String[] args) {
// CookieStore তৈরি করা
CookieStore cookieStore = new BasicCookieStore();
// HTTP ক্লায়েন্ট কনফিগারেশন তৈরি, CookieStore যোগ করা
try (CloseableHttpClient httpClient = HttpClients.custom()
.setDefaultCookieStore(cookieStore) // CookieStore সেট করা
.build()) {
// HTTP GET রিকোয়েস্ট তৈরি
HttpGet request = new HttpGet("https://your-api-endpoint.com");
// রিকোয়েস্ট পাঠানো এবং রেসপন্স প্রাপ্তি
try (CloseableHttpResponse response = httpClient.execute(request)) {
String responseBody = EntityUtils.toString(response.getEntity());
System.out.println("Response: " + responseBody);
// কুকি গুলি প্রদর্শন করা
cookieStore.getCookies().forEach(cookie -> System.out.println("Cookie: " + cookie.getName() + "=" + cookie.getValue()));
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
BasicCookieStore
ব্যবহার করা হয়েছে। এটি কুকি সঞ্চয় করতে এবং পরবর্তী রিকোয়েস্টে পাঠাতে সক্ষম।HttpClients.custom()
ব্যবহার করে কাস্টম কনফিগারেশন সহ CloseableHttpClient
তৈরি করা হয়েছে। এখানে setDefaultCookieStore(cookieStore)
মেথড ব্যবহার করে কুকি স্টোর সেট করা হয়েছে।HttpGet
রিকোয়েস্ট তৈরি করা হয়েছে এবং httpClient.execute(request)
মেথড দ্বারা সার্ভারে পাঠানো হয়েছে।cookieStore.getCookies()
ব্যবহার করে কুকি গুলি অ্যাক্সেস করা হয় এবং কনসোলে প্রিন্ট করা হয়।cookieStore.getCookies()
মেথডের মাধ্যমে কুকি গুলি পুনরুদ্ধার করা যায়।cookieStore.clear()
ব্যবহার করে সমস্ত কুকি মুছে ফেলা যায়।Apache HTTP Client-এ CookieStore ব্যবহার করে কুকি ম্যানেজমেন্ট করা যায়। BasicCookieStore
কুকি সংগ্রহ করার জন্য এবং HttpClient
কনফিগারেশনে setDefaultCookieStore
ব্যবহার করে কুকি পাঠানোর জন্য ব্যবহৃত হয়। getCookies()
মেথড ব্যবহার করে আপনি কুকি সংগ্রহ করতে পারেন এবং রেসপন্সের পর এগুলি অ্যাক্সেস করতে পারেন।
common.read_more