Java httpclient请求,解决乱码问题


public class HttpPostRequestUtil {

public HttpPostRequestUtil() {

}
public static String post(String url, Map<String, String> maps) {
// 第一步,创建HttpPost对象
HttpPost httpPost = new HttpPost(url);

// 设置HTTP POST请求参数必须用NameValuePair对象
List<NameValuePair> params = new ArrayList<NameValuePair>();
if (params != null) {
Set<String> keys = maps.keySet();
for (String key : keys) {
System.out.println(maps.get(key));
params.add(new BasicNameValuePair(key, maps.get(key)));

}
}

// params.add(new BasicNameValuePair("action", "downloadAndroidApp"));
// params.add(new BasicNameValuePair("packageId",
// "89dcb664-50a7-4bf2-aeed-49c08af6a58a"));
// params.add(new BasicNameValuePair("uuid", "test_ok1"));

HttpResponse httpResponse = null;
try {
// 设置httpPost请求参数
httpPost.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
httpResponse = new DefaultHttpClient().execute(httpPost);
// System.out.println(httpResponse.getStatusLine().getStatusCode());
if (httpResponse.getStatusLine().getStatusCode() == 200) {
// 第三步,使用getEntity方法活得返回结果
String result = EntityUtils.toString(httpResponse.getEntity());
System.out.println("result:" + result);
return result;
}
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}

public static void main(String[] args) {

System.out.println(post("http://user.qzone.qq.com/876187500", null));
}

}

Java httpclient请求,解决乱码问题

时间: 2024-10-31 18:31:05

Java httpclient请求,解决乱码问题的相关文章

关于java代码提交HTTP POST请求中文乱码的解决方法

首先说明下这些只是根据我工作常用经验的总结,可能不一定完全对,也不一定全面,但却是最通用的. JAVA里HTTP提交方式 httpurlconnection:jdk里自带的 httpclient:apache开源项目 resttemplate:spring提供,本质就是封装了httpclient POST中文乱码解决 使用URLEncoder.encode和URLEncoder.decode httpclient好像直接就可以提交带中文的参数 更多内容参阅: HttpURLConnection与

Android HttpClient 用法以及乱码解决

一.Post提交 并可以实现多文件上传 // 创建DefaultHttpClient对象 HttpClient httpclient = new DefaultHttpClient(); // 创建一个HttpGet对象 HttpPost post = new HttpPost(realUrl); MultipartEntity entity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE); if (params != nu

[Java Web]Struts2解决中文乱码问题

1.设置struts的字符编码,可以在struts.xml中增加以下代码: <constant name="struts.i18n.encoding" value="GBK" /> 或者找到struts的默认配置文件,位置在 struts2-core-2.3.16.3.jar 里面 org.apache.struts2 包中的 default.properties 文件.修改以下配置: ### This can be used to set your d

在Filter中使用动态代理解决请求中文乱码问题

使用动态代理解决请求中文乱码问题 1.增强一个类我们常用的几种解决方案: 1.继承 a) 优点简单 b) 必须有被增强类的实现类 2.装饰者模式 a) 要求:1实现相同的接口.2持有被增强的对象 b) 优点:不必知道被增强的实现是谁 c) 缺点:必须实现所有没被增强方法的原始对象的原样调用 3.动态代理 a) 要求:1实现相同接口,2持有被增强的对象 b) 优点:不必手动实现所有不增强方法的原样调用.对方法进行增强时有类似过滤器的功能. c) 缺点:学习成本高. 代理(Proxy): 一个代理对

解决servlet请求中文乱码的通用过滤器程序

import java.io.IOException; import java.io.UnsupportedEncodingException; import java.util.Map; import java.util.Set; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletExcepti

IDEA2014开发Java程序以及中文乱码问题的解决

IDEA2014开发Java程序以及中文乱码问题的解决 我们知道IDEA是可以很强大的集成开发环境,不仅可以开发Web工程,还可以开发Java运行程序,但是在进行Java开发之前,我们需要对IDEA做一些配置工作.步骤如下: 下载IDEA2014下载地址,过期私聊我(http://pan.baidu.com/s/1jIfbtdW) 下载JDK64位机(http://download.oracle.com/otn-pub/java/jdk/8u77-b03/jdk-8u77-windows-x64

get请求和post的请求的乱码解决

关于get和post请求出现中文乱码解决乱码原因:首先要说的是tomcat对get和post这两种请求方式处理是不一样的,在默认情况下,两者处理的编码都是iso-8859-1:对于post提交处理:对post提交的表单通过编写一个过滤器的方法来解决,过滤器在用户提交的数据被处理之前被调用,可以在这里改变参数的编码方式对于get提交处理:修改tomcat默认配置的编码方式:在?:\Tomcat 6.0\conf\server.xml下 代码中<Connector port="8080&quo

java获取常见文本文件的编码 解决乱码问题

乱码问题的产生一般是,由字节流转字符流的时候,读文件的编码与文件的系统编码不一致造成的. 解决方式:先自动判断文件系统编码类型,然后读的时候用这个类型去读就ok了. 自动判断文件系统编码类型代码如下, 地址:http://www.cnblogs.com/java0721/archive/2012/07/21/2602963.html java获取常见文本文件的编码 解决乱码问题

java读写文件(可当工具类保存。解决乱码)

//读文件 public static String ReadFile(String path) { File file = new File(path); BufferedReader reader = null; String laststr = ""; try { reader = new BufferedReader(new FileReader(file)); String tempString = null; while ((tempString = reader.read