首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Heritrix3.1.0RC1使用Cookie不能自动登录有关问题的一个解决方法

2012-07-08 
Heritrix3.1.0RC1使用Cookie不能自动登录问题的一个解决办法改FetchHTTP类,?1、在innerProcess方法中的代码

Heritrix3.1.0RC1使用Cookie不能自动登录问题的一个解决办法

改FetchHTTP类,

?

1、在innerProcess方法中的代码

this.http.executeMethod(customConfigOrNull, method);

之前增加:

populateCookies(method);

?

2、增加私有方法如下:

    private void populateCookies(HttpMethodBase method) {        Map<String, Cookie> cookieMap = cookieStorage.getCookiesMap();                //没设置Cookie.        if(cookieMap == null || cookieMap.size() == 0) {            return;        }                StringBuilder sb = new StringBuilder("");        for(Cookie cookie : cookieMap.values()) {            sb.append(cookie.getName());            sb.append('=');            sb.append(cookie.getValue());            sb.append(';');        }        method.setRequestHeader("Cookie", sb.deleteCharAt(sb.length() - 1).toString());    }

?

3、修改AbstractCookieStorage类,在记录日志的代码之前增加

result.put(cookie.getSortKey(), cookie)

?把Cookie放入到Map中,在FetchHTTP的start()方法中,得到配置文件中设置的Cookies。

?

?

?

?

热点排行