HttpClient 用于解决测试时候乱码的问题

    

@Test

public void doPostWithParam() throws Exception, IOException {

CloseableHttpClient httpClient = HttpClients.createDefault();

// 创建一个post对象
HttpPost post = new HttpPost("http://localhost:8082/httpclient/post.do");

// 创建一个entity,模拟一个表单
List<NameValuePair> kvList = new ArrayList<>();

kvList.add(new BasicNameValuePair("username", "张三"));
kvList.add(new BasicNameValuePair("password", "123"));

// 包装成一个entity对象

StringEntity entity = new UrlEncodedFormEntity(kvList);

// 设置请求的内容

post.setEntity(entity);

// 执行post请求
CloseableHttpResponse respose = httpClient.execute(post);

String string = EntityUtils.toString(respose.getEntity());
System.out.println(string);

respose.close();
httpClient.close();
}

在controller中设置如下内容

@RequestMapping(value = "/httpclient/post",method=RequestMethod.POST,
produces=MediaType.TEXT_PLAIN_VALUE+";charset=utf-8")
@ResponseBody

public String testPost(String username,String password){

System.out.println("username" + username + "/t password" + password) ;

//return TaotaoResult.ok();

return "username" + username + "/t password" + password ;
}
}

原文地址:https://www.cnblogs.com/xiaohouzai/p/6914850.html