1、在URL中拼接参数
URIBuilder builder = new URIBuilder(url);
builder.addParameter(param,value);
2、设置请求HttpEntity
纯文本
StringEntity entity = new StringEntity(param,charset);
带文件
MultipartEntityBuilder builder = MultipartEntityBuilder.create().setMode(HttpMultipartMode.BROWSER_COMPATIBLE); //不设置兼容模式会出现服务器端读取不到文件的情况,没有服务器端源码,原因未知
builder.setCharset(charset);//此处貌似没什么用,该乱码还是乱码
builder.addBinaryBody(file,fileContent,mulContentType,filename);//此处contentType用ContentType中的constants文件也不会乱码,因为文件是流的方式传递的,但还是最好统一字符集
builder.addTextBody(param,value,contentType);//其他参数,contentType不要用ContentType中的constants,里面字符集很乱,要自己指定字符集,不然很容易出现乱码
HttpEntity entity = builder.build();