I want to use membrane with keycloak.
I have one keycloak server, not the latest version, but the version I have to use.
There are cases when keycloak changes htts into http
result will be json where all urls are http:// (https is dropped)
correct result. all urls are https
I found a solution, but don't know how to include the code into membrane master. Because current implementation is correct but currently not useable in my reality.
diff --git a/core/src/main/java/com/predic8/membrane/core/transport/http/HttpClient.java b/core/src/main/java/com/predic8/membrane/core/transport/http/HttpClient.java
index 9f0f8e74..6f3a2be0 100644
--- a/core/src/main/java/com/predic8/membrane/core/transport/http/HttpClient.java
+++ b/core/src/main/java/com/predic8/membrane/core/transport/http/HttpClient.java
@@ -142,7 +142,7 @@ public class HttpClient {
if (adjustHostHeader && (exc.getRule() == null || exc.getRule().isTargetAdjustHostHeader())) {
URL d = new URL(dest);
- exc.getRequest().getHeader().setHost(d.getHost() + ":" + HttpUtil.getPort(d));
+ exc.getRequest().getHeader().setHost(d.getHost());
}
return target;
}