HttpClient 发送PUT请求上传字节数据文件
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPut;
import org.apache.http.entity.ByteArrayEntity;
import org.apache.http.util.EntityUtils;
import org.apache.http.HttpEntity;
import org.apache.http.StatusLine;
import org.springframework.web.multipart.MultipartFile;
CloseableHttpClient httpClient = HttpClients.createDefault();
HttpPut httpPut = new HttpPut(url);
RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(35000).setConnectionRequestTimeout(35000).setSocketTimeout(60000).build();
httpPut.setConfig(requestConfig);
httpPut.setHeader("Authorization", authorization);
ByteArrayEntity reqEntity = new ByteArrayEntity(multipartFile.getBytes());
try
{
httpPut.setEntity(reqEntity);
httpResponse = httpClient.execute(httpPut);
if (httpResponse.getStatusLine().getStatusCode() == 200 || httpResponse.getStatusLine().getStatusCode() == 201)
{
HttpEntity entity = httpResponse.getEntity();
String result = EntityUtils.toString(entity);
log.info("result:" + result);
} else
{
log.info("Failed to create object! " + httpResponse.getStatusLine().getStatusCode() + httpResponse.getStatusLine().getReasonPhrase());
}
} catch (Exception e)
{
log.error(e.getMessage(), e);
} finally
{
if (httpResponse != null)
{
try
{
httpResponse.close();
} catch (IOException e)
{
e.printStackTrace();
}
}
if (null != httpClient)
{
try
{
httpClient.close();
} catch (IOException e)
{
e.printStackTrace();
}
}
}