最近在弄一个模拟登陆的程序,拿某网站调试程序,但response返回的总是乱码。
Google了半天,用了各种方法依旧乱码。
使用的方法:
if (HttpStatus.SC_OK == response.getStatusLine().getStatusCode()) {
entity = response.getEntity();
if (entity != null) {
//第一种方式
System.out.println(EntityUtils.toString(entity,"GBK"));
//第二种方式
String outstr = new String(EntityUtils.toString(entity).getBytes("ISO-8859-1"),"GBK");
System.out.println(outstr);
//第三种方式
String responseString = new String(EntityUtils.toString(entity));
responseString=new String(responseString.getBytes("ISO-8859-1"),"GBK");
System.out.println(responseString);
}
}
这三种方式都不起作用,一直乱码。
然后又找到另一种方式,在httpclient之前设置编码
client.getParams().setParameter("http.protocol.content-charset", "UTF-8");
this.response = client.execute(hp);
依旧无效。
就在即将放弃的时候,突然灵光乍现。
网站是GET方式,而我采用的事post方式。
改成GET方式后,正常返回了。
相关推荐
综上所述,解决HttpClient乱码问题涉及多个环节,包括正确设置字符编码、理解HTTP头信息、自定义HttpClient配置以及编写健壮的工具类。只有对HTTP通信的各个环节有深入理解,才能有效地处理这类问题,确保数据传输的...
Jsoup+httpclient模拟登陆和抓取页面.pdf
以下将详细介绍如何使用Java HttpClient进行模拟登录。 首先,我们需要在项目中引入HttpClient的相关依赖。如果是Maven项目,可以在pom.xml文件中添加以下依赖: ```xml <groupId>org.apache.httpcomponents ...
本篇将详细介绍如何使用HttpClient解决乱码问题。 一、HttpClient基本使用 HttpClient主要由以下几个核心组件构成: 1. HttpClient:客户端实例,负责管理连接、配置请求等。 2. HttpRequestBase:表示HTTP请求,如...
在阅读博文《HttpClient模拟登陆》时,可以深入学习如何解决这些具体问题,并查看示例代码以获得更详细的实现细节。 标签“源码”意味着你需要关注底层的工作原理,而“工具”标签则暗示HttpClient作为一个实用工具...
字符集使用UTF-8编码,数据通讯统一采用 HTTP 协议通讯,使用POST 方法请求并传递参数。 POST请求Content-Type 设置为application/x-www-form-urlencoded 除此之外,我们对请求添加签名的校验,key设置为X-Sign 接口...
- 在Java程序中使用Jsoup和HttpClient来模拟登录一个网站并抓取页面内容。 - 案例中包含了登录、页面访问、内容抽取、页面修改和保存到本地等步骤,展示了完整的操作流程。 9. HTTP请求参数设置: - 设置HTTP...
在本文中,我们将深入探讨如何使用HttpClient来模拟登录方正系统,以及在此基础上开发类似“课程格子”这样的应用。 一、HttpClient简介 HttpClient是一个支持HTTP协议的客户端编程工具,支持HTTP/1.1及其后续版本...
本篇文章将详细讲解如何使用HttpClient进行模拟登录操作,结合源码分析,帮助开发者深入理解其工作原理。 HttpClient库由Apache基金会开发,提供了全面的HTTP协议支持,包括标准与扩展的HTTP方法、连接管理、重试...
在给定的代码片段中,我们看到了一个名为`LoginDZ`的类,该类用于演示如何使用HTTPClient来模拟登录Discuz!论坛系统。以下将详细解析此过程涉及的关键知识点和技术细节。 #### 二、关键技术点 1. **HTTPClient基本...
本主题将深入探讨如何使用HttpClient4库进行百度和58同城的模拟登陆操作。HttpClient4是一个强大的Java库,它提供了丰富的功能来执行HTTP请求,非常适合进行网页交互。 首先,我们来了解HttpClient4的基本用法。...
在本实例中,我们将探讨如何使用HttpClient库来模拟登录网站,获取用户信息,以及处理带有验证码的登录场景。 首先,我们需要理解HttpClient的基本使用。HttpClient的核心类包括HttpClient本身,HttpGet、HttpPost...
服务器端自己写,本示例为客户端代码,可以解决httpClient4乱码问题,是替代修改源码的最佳写法。
本篇文章将深入探讨如何使用HttpClient来模拟表单提交。 表单提交通常是用户在网页上填写信息后点击提交按钮,数据通过HTTP请求发送到服务器的过程。HttpClient为我们提供了模拟这一过程的能力,无论是GET还是POST...
以上步骤只是一个基础的示例,实际使用时可能需要根据目标网站的具体情况调整。例如,有些网站可能使用了OAuth或其他身份验证协议,或者需要处理JavaScript生成的动态令牌。在处理这类复杂情况时,可能需要使用更...
在Java开发中,HttpClient是一个广泛使用的HTTP客户端库...了解并应用以上知识点,可以帮助你有效地解决HttpClient在处理中文内容时的乱码问题。在实际项目中,确保每个环节都正确设置字符编码,是避免此类问题的关键。
本文将深入探讨如何使用Java中的HttpClient4库来实现对新浪和腾讯微博的模拟登录。HttpClient4是一个强大的HTTP客户端库,它允许开发者执行HTTP请求并处理响应,非常适合进行网页交互。 首先,我们来看`Sina.java`...
例如,从4.x到5.x,很多类和方法都进行了重构,使用时需要注意版本适配。 在名为"HttpClientDemo"的压缩包文件中,可能包含了一个示例程序,展示了如何使用HttpClient进行HTTP请求。这个程序可能包含了上述提到的...
工程里的入口类为:mnLogin.java ,由于模拟登陆的网站,使用了自签名的SSL证书,所以新增两个方法,创建HttpClient不校验服务端证书,后台通过调用登陆接口,获得返回的cookie信息,在使用登陆成功获得cookie,调取...
httpclient4 微信公众账号模拟登陆,网络上看到的,觉得不错上传出来,供大家一起共同分享学习。