我找到了解決方案,通過使用HttpURLConnection的而不是RestTemplate:
HttpURLConnection con = getHttpURLConnection();
try {
con.setInstanceFollowRedirects(true);
con.setRequestProperty(requestHeaderName, requestHeaderValue);
HttpURLConnection.setFollowRedirects(true);
con.getResponseCode();
verifyResponseCode(con);
String redirectPath = con.getURL().toString();
return new RedirectView(redirectPath);
} catch (RestClientException e) {
log.error(e.getMessage(), e);
throw e;
}
而在getHttpURLConnection:
HttpURLConnection getHttpURLConnection() throws Exception {
URL securedUrl = new URL("URL");
return (HttpURLConnection) securedUrl.openConnection();
}
現在它爲我工作。 con.getURL()返回來自外部服務的重定向URL,現在我可以訪問它。
它取決於底層http庫,你知道你在使用哪個? – Taylor
感謝您的及時迴應。 這是spring-web-4.3.6.RELEASE – saeedj
這不是http庫。這可能是apache http或okhttp或者其他的。找出這是什麼,並看看配置。它比春天低。 – Taylor