客户端怎么使用httpclient向https服务器发送数据

2025-05-09 22:38:38
推荐回答(1个)
回答1:

直接用HttpClient这个类库,每次你都用同一个cookie去登录就可以保持session了HttpClient是一个客户端的HTTP通信实现库,目标是发送和接受HTTP请求。HTTPClient维护cookies,session的保持在客户端就是cookie的体现。HttpClinet的session的保持有两种方式,一种是将HttpClient实例保存于web应用的session中,再次请求时取出,因为httpclient会维持cookies。另一种是再次请求时,将上次请求获取的cookies带入请求中,此种方式无需将httpclient保存于session中。NameValuePair[]param={newNameValuePair("username",userId),newNameValuePair("password",password)};//第一种方式httpclient保存于session,每次请求均为同一httpclient,httpclient维持cookies//HttpClientclient=(HttpClient)request.getSession().getAttribute("HTTPCLIENT");//第二种方式每次请求带入之前请求获取的cookies。HttpClientclient=newHttpClient();client.getState().addCookies(cookies);PostMethodpost=newPostMethod(url);client.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET,"UTF-8");client.getParams().setCookiePolicy(CookiePolicy.BROWSER_COMPATIBILITY);post.setRequestBody(param);client.executeMethod(post);Cookie[]cookies=client.getState().getCookies();post.releaseConnection();