Разница между URL.openConnection () и URLConnection.подключить ()?


В коде:

HttpURLConnection connection = (HttpURLConnection)createMerchURL.openConnection();
connection.setRequestMethod("PUT");
connection.addRequestProperty("Name", "Value1");

connection.connect();

..
connection.disconnect();
  • Когда на самом деле открывается соединение? В ..createMerchURL.openConnection(); ? или в connection.connect();?

  • Как я могу задать URL в объекте connection и использовать его с connection.connect()?(как мне менее комфортно с .openConnection())

Наконец, есть ли какая-то разница между этими двумя понятиями?

Спасибо..

3 6

3 ответа:

Когда на самом деле открывается соединение? Около..createMerchURL.содержащие вредоносные элементы(); ? или при соединении.connect ();?

Последнее. Первый просто анализирует URL, находит протокол и создает объект HttpURLConnection.

Как я могу задать URL в объекте connection

Ты не можешь.

И использовать его с подключением.подключить ()?

Ты не можешь.

(как мне менее комфортно с .openConnection ())

Невезение: устраивайтесь с ним поудобнее.

connection.connect() не требуется. Операции, которые зависят от наличия соединения, например getContentLength(), getResponseCode(), будут неявно выполнять соединение, если это необходимо.

Источник: Java Docs

В дополнение к другим ответам, Если вы просто хотите запустить какой-то файл PHP (через GET) в некотором адресе, вы можете просто использовать connect() после openConnection(), а затем disconnect(), Конечно.