Skip to content

Commit 9b38515

Browse files
committed
Update getRedirect logic in RedirectHandler
1 parent 0ecb41c commit 9b38515

File tree

1 file changed

+18
-25
lines changed

1 file changed

+18
-25
lines changed

src/main/java/com/microsoft/graph/httpcore/RedirectHandler.java

Lines changed: 18 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -44,30 +44,23 @@ public boolean isRedirected(
4444

4545
@Override
4646
public HttpUriRequest getRedirect(
47-
final HttpRequest request,
48-
final HttpResponse response,
49-
final HttpContext context) throws ProtocolException {
50-
final URI uri = getLocationURI(request, response, context);
51-
final String method = request.getRequestLine().getMethod();
52-
if (method.equalsIgnoreCase(HttpHead.METHOD_NAME)) {
53-
return new HttpHead(uri);
54-
} else if (method.equalsIgnoreCase(HttpGet.METHOD_NAME))
55-
return new HttpGet(uri);
56-
else {
57-
final int status = response.getStatusLine().getStatusCode();
58-
if(status != HttpStatus.SC_SEE_OTHER) {
59-
try {
60-
final URI requestURI = new URI(request.getRequestLine().getUri());
61-
if(!uri.getHost().equalsIgnoreCase(requestURI.getHost()) ||
62-
!uri.getScheme().equalsIgnoreCase(requestURI.getScheme()))
63-
request.removeHeaders("Authorization");
64-
return RequestBuilder.copy(request).setUri(uri).build();
65-
}
66-
catch (final URISyntaxException ex) {
67-
throw new ProtocolException(ex.getMessage(), ex);
68-
}
69-
}
70-
return new HttpGet(uri);
71-
}
47+
final HttpRequest request,
48+
final HttpResponse response,
49+
final HttpContext context) throws ProtocolException {
50+
final URI uri = getLocationURI(request, response, context);
51+
try {
52+
final URI requestURI = new URI(request.getRequestLine().getUri());
53+
if(!uri.getHost().equalsIgnoreCase(requestURI.getHost()) ||
54+
!uri.getScheme().equalsIgnoreCase(requestURI.getScheme()))
55+
request.removeHeaders("Authorization");
56+
}
57+
catch (final URISyntaxException ex) {
58+
throw new ProtocolException(ex.getMessage(), ex);
59+
}
60+
61+
final int status = response.getStatusLine().getStatusCode();
62+
if(status == HttpStatus.SC_SEE_OTHER)
63+
return new HttpGet(uri);
64+
return RequestBuilder.copy(request).setUri(uri).build();
7265
}
7366
}

0 commit comments

Comments
 (0)