Вы можете прервать текущий HTTP-запрос, используя метод abort () , т. Е. После вызова этого метода для определенного запроса его выполнение будет прервано.
Если этот метод вызывается после одного выполнения, ответы этого выполнения не будут затронуты, и последующие выполнения будут прерваны.
пример
Если вы посмотрите на следующий пример, мы создали запрос HttpGet, распечатали формат запроса, используемый с помощью getMethod () .
Затем мы выполнили еще одно выполнение с тем же запросом. Напечатал строку состояния снова, используя 1- е исполнение. Наконец, печатается строка состояния второго исполнения.
Как обсуждалось, ответы 1- го исполнения (выполнение перед методом прерывания) печатаются (включая вторую строку состояния, которая записывается после метода прерывания), и все последующие исполнения текущего запроса после метода прерывания завершаются неудачно, вызывая исключение.
import org.apache.http.HttpResponse; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; public class HttpGetExample { public static void main(String args[]) throws Exception{ //Creating an HttpClient object CloseableHttpClient httpclient = HttpClients.createDefault(); //Creating an HttpGet object HttpGet httpget = new HttpGet("http://www.tutorialspoint.com/"); //Printing the method used System.out.println(httpget.getMethod()); //Executing the Get request HttpResponse httpresponse = httpclient.execute(httpget); //Printing the status line System.out.println(httpresponse.getStatusLine()); httpget.abort(); System.out.println(httpresponse.getEntity().getContentLength()); //Executing the Get request HttpResponse httpresponse2 = httpclient.execute(httpget); System.out.println(httpresponse2.getStatusLine()); } }
Выход
При выполнении вышеупомянутая программа генерирует следующий вывод —