1、引入依赖
org.apache.httpcomponents
httpclient
4.5.13
2、获取图片并转base64
@Test
void Test() throws IOException {
// 获取图片流
HttpGet httpGet = new HttpGet("图片url");
httpGet.setHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64)");
CloseableHttpClient httpClient = HttpClients.createDefault();
CloseableHttpResponse response = httpClient.execute(httpGet);
HttpEntity entity = response.getEntity();
InputStream inputStream = entity.getContent();
// 从流中获取数据
byte[] data = new byte[(int) entity.getContentLength()];
int offset = 0;
int readBytes = 0;
do {
readBytes = inputStream.read(data, offset, 2048);
offset += readBytes;
} while (readBytes != -1);
// base64 编码
base64.Encoder encoder = base64.getEncoder();
String result = encoder.encodeToString(data);
System.out.println(result);
// 关闭资源
response.close();
httpClient.close();
}
3、前端显示base64图片
Image