Я использую HTTPURLConnection
для подключения к веб-службе. Я знаю, как использовать HTTPURLConnection
, но я хочу понять, как это работает. В принципе, я хочу знать следующее:
- В какой момент
HTTPURLConnection
попытайтесь установить соединение с данным URL? - В какой момент я могу знать, что мне удалось успешно установить соединение?
- Установили соединение и отправили фактический запрос, сделанный при вызове одного шага/метода? Какой метод?
- Можете ли вы объяснить функцию
getOutputStream
иgetInputStream
в неспециалистом? Я замечаю, что когда сервер, к которому я пытаюсь подключиться, не работает, я получаюException
вgetOutputStream
. Означает ли это, чтоHTTPURLConnection
начнет устанавливать соединение только при вызовеgetOutputStream
? Как насчетgetInputStream
? Поскольку я могу получить ответ только вgetInputStream
, значит, я еще не отправил запрос вgetOutputStream
, но просто установил соединение? DoHTTPURLConnection
вернуться на сервер, чтобы запросить ответ, когда я вызываюgetInputStream
? - Можно ли сказать, что
openConnection
просто создает новый объект соединения, но пока не устанавливает соединение? - Как я могу измерить накладные расходы на чтение и соединить служебные данные?