我是靠谱客的博主 粗心花生,最近开发中收集的这篇文章主要介绍HttpClient:与springmvc结合跨域请求——使用PostMethod类进行请求,上传文件,携带参数,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1.无参数

public static PostMethod postMethod(String url) {
return new PostMethod(url);
}
/**
* 通过postMethod类进行请求
* @param post
*/
public static void sendByPostMethod(PostMethod post) {
try {
HttpClient client = new HttpClient();
int status = client.executeMethod(post);
if (status == 200) {
Logger.getLogger(HttpClientUtil.class).info("上传成功");
// 输出响应信息
Logger.getLogger(HttpClientUtil.class).info(post.getResponseBodyAsString());
} else {
Logger.getLogger(HttpClientUtil.class).info("上传失败");
}
} catch (HttpException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

2.携带参数(以上传文件为例)

2.1 HttpClientUtil类:

/**
* @param file
* @param url
*/
public static void uploadFileByPostMethod(File file, String url) {
try {
PostMethod post = postMethod(url);
/*
* 可以添加多个类型,携带多个参数
* StringPart
* FilePart
*/
Part[] parts = {
new FilePart("file", file)
};
MultipartRequestEntity entity = new MultipartRequestEntity(parts, post.getParams());
/*
* entity类型
* ByteArrayRequestEntity
* InputStreamRequestEntity
* MultipartRequestEntity
* StringRequestEntity
*/
post.setRequestEntity(entity);
sendByPostMethod(post);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}

2.2 接收请求接口

@RestController
@RequestMapping("/httpClientController")
public class HttpClientController {
@RequestMapping(params = "uploadFile")
public void uploadFile(@RequestParam CommonsMultipartFile file) {
File serverFile = new File("E:/to/" + file.getOriginalFilename());
try {
FileUtils.writeByteArrayToFile(serverFile, file.getBytes());
} catch (IOException e) {
e.printStackTrace();
}
}

2.3测试类

@Test
public void uploadFileByPostMethod() {
String url = PropUtil.configProp.getProperty("url") + "/httpClientController.do?uploadFile";
File file = new File("E:/from/test");
HttpClientUtil.uploadFileByPostMethod(file, url);
}

3.测试文件


内容:

4. 测试结果



最后

以上就是粗心花生为你收集整理的HttpClient:与springmvc结合跨域请求——使用PostMethod类进行请求,上传文件,携带参数的全部内容,希望文章能够帮你解决HttpClient:与springmvc结合跨域请求——使用PostMethod类进行请求,上传文件,携带参数所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部