我是靠谱客的博主 粗心花生,最近开发中收集的这篇文章主要介绍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类进行请求,上传文件,携带参数所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复