Handling a body response as a byte array can be accomplished using BodyHandlers.ofByteArray(), as shown in the following snippet of code:
HttpResponse<byte[]> responseOfByteArray = client.send(
request, HttpResponse.BodyHandlers.ofByteArray());
System.out.println("Status code: "
+ responseOfByteArray.statusCode());
System.out.println("Body: "
+ new String(responseOfByteArray.body()));
For consuming the byte array, call ofByteArrayConsumer(Consumer<Optional<byte[]>> consumer).