Apatch Http клиент отключить перенаправление не работает для перенаправления на файлы на том же хосте - PullRequest
0 голосов
/ 20 июня 2019

Я получаю доступ к URL, который отправляет перенаправление 301 в местоположение на том же сервере.См. Вывод curl ниже

curl -I https://www.dropbox.com/<somedir>/test_out4.mp4 HTTP/1.1 301 Moved Permanently Location: /s/raw/<someotherdir>/test_out4.mp4 <<< different path in same host

Когда я пытаюсь получить доступ к этому URL в Java с помощью Apache HttpComponents и отключить перенаправление, оно всегда следует за перенаправлениями.Я не получаю 301, вместо 200.

public static void main(String[] args) throws IOException, URISyntaxException {
        HttpHead request = new HttpHead(new URI(SAMPLE_URL));
        HttpClient client = HttpClients.custom().disableRedirectHandling().build();
        HttpResponse response = client.execute(request);
        System.out.println(response.getStatusLine());
        DefaultHttpClient instance = new DefaultHttpClient();
        HttpParams params = new BasicHttpParams();
        params.setParameter(ClientPNames.HANDLE_REDIRECTS, false);
        request.setParams(params);
        response = instance.execute(request);
        System.out.println(response.getStatusLine());
}

Оба метода до 4.3 и 4.3 не работают.

HTTP / 1.1 200 OK <<< disableRedirectHandling () завершается ошибкой </p>

HTTP / 1.1 200 OK <<< ClientPNames.HANDLE_REDIRECTS, false) завершается ошибкой </p>

Как отключить все перенаправления, даже внутри локального хоста?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...