Apache HttpClient 或 servlet API 中是否有任何现有代码来解析 Cookie 标头并从包含“name1=value1;name2=value2;...”的字符串中获取 Cookie 列表?编写代码来解析这个似乎并不难,但如果已经有一些现有的代码,我想使用它。
Alessandro Vernet
问问题
2440 次
1 回答
2
如果您在对象上调用getCookies()HttpServletRequest
,它将返回一个Cookie
对象数组。如果您需要经常按名称查找 cookie,那么将它们放入 Map 中可能会更容易,因此查找它们很容易(而不是每次都遍历 Array)。像这样的东西:
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 而不是 servlet,则可以Cookie
使用以下方法获取数组:
client.getState().getCookies()
其中 client 是您的 HttpClient 对象。
于 2008-12-14T07:11:48.413 回答