title: Moving to Apache HttpClient 4.3, how to get legacy interceptor behavior with digest authentication?
body: <p>Our Android app has been using the Android-bundled HttpClient for several years.  We have grown a fair amount of code that manipulates the interaction with our server product.  Each time we call execute(post), HttpClient's interaction with the server goes like this:</p>
  
  <ol>
  <li>Client sends HTTP POST to server.  </li>
  <li>Server responds with 401 Not Authorized and provides a digest authentication challenge.  </li>
  <li>Client resends HTTP POST to server, including digest authentication response (we supply a CredentialsProvider before step 1, so the authentication response is generated automatically by HttpClient).  </li>
  <li>Server accepts authorization and responds with 200.  The call to execute() returns the 200 response and the body accompanying the 200 response.</li>
  </ol>
  
  <p>We've been running into <a href="https://stackoverflow.com/questions/36262232/android-6-0-httpclient-issue-with-lg-g3-phone">a problem with the HTTP library that ships with Android on several devices</a>.   We tried to <a href="https://stackoverflow.com/a/36485745/4343161">move to Apache 4.3 in the Android app</a>, but the interceptor behavior is different.  Traditionally, the request interceptor would fire twice: on step 1 and step 3.  The response interceptor would fire twice, too: on step 2 and step 4.  We only needed them for step 2 and step 3, but it was easy to have the interceptors exit early on steps 1 and 4.  Since moving to HttpClient 4.3, the request interceptor is only firing on step 1, when we don't need it.  </p>
  
  <p>Is there a configuration option that would restore the old behavior?  We've also tried linking in our own copy of HttpClient 4.2, but that's not going well either.</p>
  
  <p>Thank you! </p>