HttpClient cokie会话保持

转自:http://stackoverflow.com/questions/874227/answer/submit

public class HTTPHelp{

    DefaultHttpClient httpClient = new DefaultHttpClient();
    HttpContext localContext = new BasicHttpContext();
    private boolean abort;
    private String ret;

    HttpResponse response = null;
    HttpPost httpPost = null;

    public HTTPHelp(){

    }

    public void clearCookies() {

    	httpClient.getCookieStore().clear();

    }

    public void abort() {

    	try {
    		if(httpClient!=null){
    			System.out.println("Abort.");
    			httpPost.abort();
    			abort = true;
    		}
    	} catch (Exception e) {
    		System.out.println("HTTPHelp : Abort Exception : "+e);
    	}
    }

    public String postPage(String url, String data, boolean returnAddr) {

    	ret = null;

    	httpClient.getParams().setParameter(ClientPNames.COOKIE_POLICY, CookiePolicy.RFC_2109);

    	httpPost = new HttpPost(url);
    	response = null;

    	StringEntity tmp = null;		

    	httpPost.setHeader("User-Agent", "Mozilla/5.0 (X11; U; Linux " +
    		"i686; en-US; rv:1.8.1.6) Gecko/20061201 Firefox/2.0.0.6 (Ubuntu-feisty)");
    	httpPost.setHeader("Accept", "text/html,application/xml," +
    		"application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5");
    	httpPost.setHeader("Content-Type", "application/x-www-form-urlencoded");

    	try {
    		tmp = new StringEntity(data,"UTF-8");
    	} catch (UnsupportedEncodingException e) {
    		System.out.println("HTTPHelp : UnsupportedEncodingException : "+e);
    	}

    	httpPost.setEntity(tmp);

    	try {
    		response = httpClient.execute(httpPost,localContext);
    	} catch (ClientProtocolException e) {
    		System.out.println("HTTPHelp : ClientProtocolException : "+e);
    	} catch (IOException e) {
    		System.out.println("HTTPHelp : IOException : "+e);
    	} 
                ret = response.getStatusLine().toString();

                return ret;
                }
}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值