setHeaders(..) 추가

master
mjkhan21 9 months ago
parent fd2c935ae1
commit cf152acf1b

@ -227,14 +227,17 @@ public class WebClient extends AbstractComponent {
private <T> HttpResponse<T> handleRequest(boolean async, HttpRequest hreq, HttpResponse.BodyHandler<T> bodyHandler, Consumer<HttpResponse<T>> respHandler) throws Exception { private <T> HttpResponse<T> handleRequest(boolean async, HttpRequest hreq, HttpResponse.BodyHandler<T> bodyHandler, Consumer<HttpResponse<T>> respHandler) throws Exception {
log().debug("Sending request:\n{} {}", hreq.method(), hreq.uri()); log().debug("Sending request:\n{} {}", hreq.method(), hreq.uri());
if (!async) { if (!async) {
HttpResponse<T> resp = client().send(hreq, bodyHandler); HttpResponse<T> resp = client().send(hreq, bodyHandler);
log().debug("{} response received", resp.statusCode()); log().debug("{} response received", resp.statusCode());
resp.headers().map().forEach((k, v) -> log().debug("{} = {}", k, v));
return resp; return resp;
} else { } else {
CompletableFuture<HttpResponse<T>> future = client().sendAsync(hreq, bodyHandler); CompletableFuture<HttpResponse<T>> future = client().sendAsync(hreq, bodyHandler);
future.thenApply(resp -> { future.thenApply(resp -> {
log().debug("{} response received", resp.statusCode()); log().debug("{} response received", resp.statusCode());
resp.headers().map().forEach((k, v) -> log().debug("{} = {}", k, v));
respHandler.accept(resp); respHandler.accept(resp);
return resp; return resp;
}); });
@ -559,12 +562,20 @@ public class WebClient extends AbstractComponent {
HttpRequest.Builder builder = HttpRequest.newBuilder(URI.create(uri + queryString)) HttpRequest.Builder builder = HttpRequest.newBuilder(URI.create(uri + queryString))
.GET(); .GET();
if (headers != null) setHeaders(builder);
headers.forEach((k, v) -> builder.header(k, v));
return builder.build(); return builder.build();
} }
private void setHeaders(HttpRequest.Builder builder) {
if (isEmpty(headers)) return;
headers.forEach((k, v) -> {
builder.header(k, v);
log(Request.class).debug("{} = {}", k, v);
});
}
private String getParams() { private String getParams() {
if (keyValues == null) return ""; if (keyValues == null) return "";
@ -593,11 +604,9 @@ public class WebClient extends AbstractComponent {
HttpRequest post() { HttpRequest post() {
try { try {
HttpRequest.Builder builder = HttpRequest.newBuilder(URI.create(uri)); HttpRequest.Builder builder = HttpRequest.newBuilder(URI.create(uri))
builder.POST(bodyPublisher(contentType())); .POST(bodyPublisher(contentType()));
setHeaders(builder);
if (headers != null)
headers.forEach((k, v) -> builder.header(k, v));
return builder.build(); return builder.build();
} catch (Exception e) { } catch (Exception e) {
@ -640,7 +649,6 @@ public class WebClient extends AbstractComponent {
} }
byteList.add(line("--" + boundary + "--")); byteList.add(line("--" + boundary + "--"));
byteList.add(line("")); byteList.add(line(""));
// byteList.forEach(bytes -> System.out.print(new String(bytes)));
return BodyPublishers.ofByteArrays(byteList); return BodyPublishers.ofByteArrays(byteList);
} }

Loading…
Cancel
Save