Authority from request when HttpHost is null (#9990)
This commit is contained in:
parent
0994056365
commit
bbfe950ad0
|
|
@ -19,9 +19,13 @@ public class RequestWithHost extends HttpRequestWrapper implements ClassicHttpRe
|
||||||
|
|
||||||
public RequestWithHost(HttpHost httpHost, ClassicHttpRequest httpRequest) {
|
public RequestWithHost(HttpHost httpHost, ClassicHttpRequest httpRequest) {
|
||||||
super(httpRequest);
|
super(httpRequest);
|
||||||
|
if (httpHost != null) {
|
||||||
this.scheme = httpHost.getSchemeName();
|
this.scheme = httpHost.getSchemeName();
|
||||||
this.authority = new URIAuthority(httpHost.getHostName(), httpHost.getPort());
|
this.authority = new URIAuthority(httpHost.getHostName(), httpHost.getPort());
|
||||||
|
} else {
|
||||||
|
this.scheme = httpRequest.getScheme();
|
||||||
|
this.authority = httpRequest.getAuthority();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,7 @@ import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;
|
||||||
import org.apache.hc.client5.http.impl.classic.HttpClients;
|
import org.apache.hc.client5.http.impl.classic.HttpClients;
|
||||||
import org.apache.hc.core5.http.ClassicHttpRequest;
|
import org.apache.hc.core5.http.ClassicHttpRequest;
|
||||||
import org.apache.hc.core5.http.ClassicHttpResponse;
|
import org.apache.hc.core5.http.ClassicHttpResponse;
|
||||||
|
import org.apache.hc.core5.http.HttpHost;
|
||||||
import org.apache.hc.core5.http.HttpResponse;
|
import org.apache.hc.core5.http.HttpResponse;
|
||||||
import org.apache.hc.core5.http.io.HttpClientResponseHandler;
|
import org.apache.hc.core5.http.io.HttpClientResponseHandler;
|
||||||
import org.apache.hc.core5.http.message.BasicClassicHttpRequest;
|
import org.apache.hc.core5.http.message.BasicClassicHttpRequest;
|
||||||
|
|
@ -90,6 +91,26 @@ public class ApacheHttpClientTest {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Nested
|
||||||
|
class ApacheClientNullHttpHostRequestTest extends AbstractTest {
|
||||||
|
@Override
|
||||||
|
ClassicHttpRequest createRequest(String method, URI uri) {
|
||||||
|
// also testing with an absolute path below
|
||||||
|
return new BasicClassicHttpRequest(method, HttpHost.create(uri), fullPathFromUri(uri));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
ClassicHttpResponse doExecuteRequest(ClassicHttpRequest request, URI uri) throws Exception {
|
||||||
|
return getClient(uri).execute(null, request);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
void executeRequestWithCallback(ClassicHttpRequest request, URI uri, HttpClientResult result)
|
||||||
|
throws Exception {
|
||||||
|
getClient(uri).execute(null, request, new ResponseHandler(result));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Nested
|
@Nested
|
||||||
class ApacheClientHostAbsoluteUriRequestTest extends AbstractTest {
|
class ApacheClientHostAbsoluteUriRequestTest extends AbstractTest {
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue