1
HttpClient를 사용하여 URL에서 전체 리디렉션 기록을 캡처 할 수 있습니까?HTTPClient - 모든 리디렉션 목록 캡처
예를 들어 URL-B로 리디렉션되는 URL-A는 URL-C로 최종 전송됩니다. URL A, B 및 C가있는 URL을 캡처하는 방법이 있습니까?
가장 확실한 옵션은 헤더에서 위치 태그를 수동으로 찾고 HTTP 200에 도달하면 중지하는 것입니다. 이것은 순환 리디렉션 등을 찾는 데 필요한 간단한 프로세스가 아닙니다.
HttpContext context = new BasicHttpContext();
HttpResponse response = hc.execute(httpget, context);
//.....
for(URI u : ((RedirectLocations)context.getAttribute(DefaultRedirectStrategy.REDIRECT_LOCATIONS)).getAll()){
System.out.println(u);
}
이 사용하는 경우에 작동합니다
지금 나는의 라인을 따라 뭔가를 있으리라 믿고있어?
예를 들어 주셔서 감사합니다! 이 질문에 사용 된 위의 방법은 내가 원하는 것을하지 않을 것이고 자신의 리디렉션 처리기를 구현해야 함을 의미합니까? 우리는 실제로 모든 리디렉션 목록을 얻는 것 외에 다른 작업을 수행 할 필요가 없습니다. – NightWolf
내가 한 것을 재사용했습니다. 나는 당신이 참조하는 어떤 수업의 적절한 의존성을 얻을 수 없었다. 간단히 말해서 테스트 해 보겠습니다. Google은 유스 케이스의 한 예입니다. (google.com -> www.google.com -> www.google.?) 또는 빠른 테스트 서버를 사용하십시오. – h3xStream
Google에서 테스트 해 주셔서 감사합니다. 위의 접근법을 테스트 해 보면, 잘 작동하는 것처럼 보이지만 접근 방법과 함께 사용하는 것이 더 안전하고 유연합니다. – NightWolf