在开发中,我们使用的比较多的HTTP请求方式基本上就是GET、POST。其中GET用于从服务器获取数据,POST主要用于向服务器提交一些表单数据,例如文件上传等。而我们在使用HTTP请求时中遇到的比较麻烦的事情就是构造文件上传的HTTP报文格式,这个格式虽说也比较简单,但也比较容易出错。今天我们就一起来学习HTTP POST的报文格式以及通过Java来模拟文件上传的请求。
啥都不说直接上代码,能用记得点赞:
/**
*
* @Function: HttpClient.java 上传文件到指定地址URL
* @param urlStr 请求地址
* @param files 文件map集合
* @param params 参数集合
*
* @version: v1.0.0
* @author: 白毅
* @date: 2019年2月22日 下午5:33:41
*/
public String uploadFile(String urlStr, Map<String, File> files, Map<String, String> params) {
try {
// 换行符
final String LINEND = "\r\n", MULTIPART_FROM_DATA = "multipart/form-data", PREFIX = "--";
String BOUNDARY = java.util.UUID.randomUUID().toString();
boolean isFirst = true;
// 服务器的上传地址
URL url = new URL(urlStr);
HttpURLConnection conn =