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