2
是否有阿帕奇任何現有代碼的HttpClient或servlet的API中解析Cookie頭部和從包含字符串取得「NAME1 =值1; 2 =值2; ...」 Cookie的列表?編寫代碼來解析它似乎並不難,但如果已經有一些現有的代碼,我想使用它。代碼是HttpClient的或servlet API解析Cookie頭部
是否有阿帕奇任何現有代碼的HttpClient或servlet的API中解析Cookie頭部和從包含字符串取得「NAME1 =值1; 2 =值2; ...」 Cookie的列表?編寫代碼來解析它似乎並不難,但如果已經有一些現有的代碼,我想使用它。代碼是HttpClient的或servlet API解析Cookie頭部
如果您在HttpServletRequest
對象上調用getCookies(),它將返回一個Cookie
對象的數組。如果你需要的名字頻繁查找的cookie,那麼它可能會更容易把他們的地圖,這樣可以很容易地看看他們(而不是遍歷每次陣列)。事情是這樣的:
public static Map<String,Cookie> getCookieMap(HttpServletRequest request) {
Cookie[] cookies = request.getCookies();
HashMap<String,Cookie> cookieMap = new HashMap<String,Cookie>();
if (cookies != null) {
for (Cookie cookie : cookies) {
cookieMap.put(cookie.getName(), cookie);
}
}
return cookieMap;
}
如果您使用的HttpClient,而不是servlets時,你可以用得到Cookie
陣列:
client.getState().getCookies()
,其中客戶端是你的HttpClient對象。
這假定Servlet API在classpath上可用。 Vert.x不使用HttpServletRequest。 – 2014-03-07 16:51:06