Получение тела объекта из HttpURLConnection - PullRequest
0 голосов
/ 27 мая 2018

В настоящее время я пишу небольшую библиотеку, чтобы стандартизировать использование HttpURLConenction в моих проектах для Android.

В одном из моих проектов я общаюсь с сервером, используя Http Digest для аутентификации пользователя.Java HttpUrlConnection по умолчанию не поддерживает дайджест, но мне удалось написать упрощенный дайджест auth (qop = auth), который работает довольно хорошо.

Для будущих проектов я хочу, чтобы моя библиотека использовала auth-int.Поэтому мне нужно изменить конструкцию хэша A2 и включить тело сущности HTTP (, см. RFC 7616, раздел 3.4.3 ).

Для этого я подумал о том, чтобы извлечь полный HTTP-запрос из URLConnection, а затем выбросить ненужные вещи.К сожалению, я не смог найти способ сделать это.Извлечение отдельных полей заголовка возможно с помощью .getContentEncoding(), .getContentLength(), .getContentType() и т. Д.Но при этом я не могу гарантировать, что порядок объекта, который я восстанавливаю с помощью методов get, такой же, как в запросе, и это может привести к 401.

Подводя итог:

Есть ли способ извлечь полный запрос (или лучше только тело сущности) из HttpURLConnection?

...