in src/main/java/org/apache/sling/pipes/AbstractInputStreamPipe.java [89:110]
void addHeaders(URLConnection connection) {
connection.setRequestProperty( "charset", "utf-8");
Collection<String> headers = properties.keySet().stream()
.filter(k -> k.startsWith(HEADER_PREFIX))
.map(s -> StringUtils.substringAfter(s, HEADER_PREFIX))
.collect(Collectors.toList());
if (!headers.isEmpty()) {
for (String k : headers) {
String value = getBindings().instantiateExpression(properties.get(HEADER_PREFIX + k, String.class));
connection.setRequestProperty(k, value);
}
String basicAuth = (String)getBindings().getBindings().get(BASIC_AUTH_BINDINGS);
if (StringUtils.isNotBlank(basicAuth)) {
if (headers.contains(AUTH_HEADER)) {
LOGGER.warn("both authentication header & basic auth are set, ignoring basic auth");
} else {
String encoded = Base64.getEncoder().encodeToString(basicAuth.getBytes(StandardCharsets.UTF_8));
connection.setRequestProperty(AUTH_HEADER, BASIC_PREFIX + encoded);
}
}
}
}