diff --git a/okdownload/src/main/java/com/liulishuo/okdownload/core/interceptor/connect/HeaderInterceptor.java b/okdownload/src/main/java/com/liulishuo/okdownload/core/interceptor/connect/HeaderInterceptor.java index d061288d..2dedff8a 100644 --- a/okdownload/src/main/java/com/liulishuo/okdownload/core/interceptor/connect/HeaderInterceptor.java +++ b/okdownload/src/main/java/com/liulishuo/okdownload/core/interceptor/connect/HeaderInterceptor.java @@ -86,14 +86,15 @@ public DownloadConnection.Connected interceptConnect(DownloadChain chain) throws DownloadConnection.Connected connected = chain.processConnect(); + if (chain.getCache().isInterrupt()) { + throw InterruptException.SIGNAL; + } + Map> responseHeaderFields = connected.getResponseHeaderFields(); if (responseHeaderFields == null) responseHeaderFields = new HashMap<>(); OkDownload.with().callbackDispatcher().dispatch().connectEnd(task, blockIndex, connected.getResponseCode(), responseHeaderFields); - if (chain.getCache().isInterrupt()) { - throw InterruptException.SIGNAL; - } // if precondition failed. final DownloadStrategy strategy = OkDownload.with().downloadStrategy();