服务器直接使用httpRequest相互传文件
需求是两台服务器直接使用http发送post请求,将文件从客户端服务器(以下简称A服务器)传递到服务端服务器(以下简称B服务器)。
先上A服务器代码
注意,这里传递中文参数时候要使用 new StringPart("key", "value","UTF-8"),这个方法来指定字符集,否则中文依旧乱码
这样传递参数的时候,在B服务器中通过request,getParameter("")这个方法获取的中文会有乱码,使用如下方法获取就可以避免中文乱码的问题:
先上A服务器代码
public static void main(String[] args) {
String targetURL = null;// TODO 指定URL
File targetFile1 = null;// TODO 指定上传文件
File targetFile2 = null;// TODO 指定上传文件
targetFile1 = new File("D://test//pic//2016-04-05//123.png");
targetFile2 = new File("D://test//pic//2016-04-05//test.png");
PostMethod filePost = new PostMethod(targetURL);
filePost.setRequestHeader("enctype", "multipart/form-data");
try
{
Part[] parts = {
new FilePart(targetFile1.getName(), targetFile1),
new FilePart(targetFile2.getName(), targetFile2),
new StringPart("hphm", "成Y56338","UTF-8"),
new StringPart("place", "青年路","UTF-8"),
new StringPart("picNum", "2"),
new StringPart("time", "2016-04-05 14:49:47")
};
filePost.setRequestEntity(new MultipartRequestEntity(parts,filePost.getParams()));
HttpClient client = new HttpClient();
client.getHttpConnectionManager().getParams().setConnectionTimeout(5000);
int status = client.executeMethod(filePost);
if (status == HttpStatus.SC_OK)
{
System.out.println("上传成功");
// 上传成功
}
else
{
System.out.println("上传失败");
// 上传失败
}
}
catch (Exception ex)
{
ex.printStackTrace();
}
finally
{
filePost.releaseConnection();
}
}注意,这里传递中文参数时候要使用 new StringPart("key", "value","UTF-8"),这个方法来指定字符集,否则中文依旧乱码
这样传递参数的时候,在B服务器中通过request,getParameter("")这个方法获取的中文会有乱码,使用如下方法获取就可以避免中文乱码的问题:
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest)request;
String hphm = multipartRequest.getParameter("hphm");
String place = multipartRequest.getParameter("place");
String time = multipartRequest.getParameter("time");
String picNum = multipartRequest.getParameter("picNum");
...全文
相关推荐
HttpRequest
HttpRequest 解析数据 操作简单 用法易懂
Django的HttpRequest和HttpResponse对象详解
主要介绍了Django的HttpRequest和HttpResponse对象,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
java 获取HttpRequest Header的几种方法(必看篇)
下面小编就为大家带来一篇java 获取HttpRequest Header的几种方法(必看篇)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
HttpRequest下载图片的Demo
HttpRequest下载图片的Demo
HttpRequest的QueryString属性 的一点认识
我们开发asp.net程序获取QueryString时,经常性的遇到一些url编码问题


