में यह नहीं है के बारे में की सिफारिश की, इसके बारे में उचित है। एक अनुरोध के लिए है, और एक प्रतिक्रिया के लिए है। आप दो अलग javadocs देख सकते हैं।
Cookie
एक अनुरोध में स्थानांतरित कर एक HTTP कुकी का मान, का प्रतिनिधित्व करता है।
NewCookie
एक नया HTTP कुकी बनाने के लिए प्रयोग किया जाता है, एक प्रतिक्रिया में स्थानांतरित कर दिया।
NewCookie
, जब Response
में भेजा है, कुकी जानकारी के साथ एक Set-Cookie
प्रतिक्रिया हैडर सेट हो जाएगा, और Cookie
कुकी जानकारी के साथ Cookie
अनुरोध हैडर सेट हो जाएगा। यह HTTP spec प्रति है।
उदाहरण उपयोग:
@GET
public Response get() {
return Response.ok("blah").cookie(new NewCookie("foo", "bar")).build();
}
[..]
Client client = ClientBuilder.newClient();
Response response = client.target(url).request().cookie(new Cookie("foo", "bar")).get();
आम तौर पर ग्राहक के पक्ष, तो आप मैन्युअल Cookie
नहीं बनाता के रूप में मैंने किया था। अधिकांश समय आप प्रारंभिक अनुरोध की प्रतिक्रिया से कुकीज़ प्राप्त करेंगे, फिर उन कुकीज को वापस भेजें। इसका मतलब है कि Response
में, आपके पास NewCookie
एस होगा और आपको अगले अनुरोध के लिए उन्हें Cookie
एस में बदलना होगा। इसे आसानी से newCookie.toCookie()
Map<String, NewCookie> cookies = response.getCookies();
Invocation.Builder ib = target.request();
for (NewCookie cookie: cookies.values()) {
ib.cookie(cookie.toCookie());
}
Response response = ib.get();
पर कॉल करके आसानी से पूरा किया जा सकता है
स्रोत
2015-12-03 00:26:45