title: Axios.catch does not catch network/console errors
body: <p>I am using React with axios <strong>and redux-promise</strong>.  Axios does not appear to catch the 404 error, as below.  </p>
  
  <p><a href="https://i.stack.imgur.com/Ui3wB.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/Ui3wB.png" alt="axios writes the 404 error to the console, even when I am handling it"></a></p>
  
  <p>This is the code.  </p>
  
  <pre><code> const url = FIVE_DAY_FORECAST_URL.replace("{0}", city);
  
    axios.interceptors.response.use(function (response) {
      return response;
    }, function (error) {
       return Promise.reject(error);
    });
  
    try{
      const request = axios.get(`${url}`).then(e =&gt; { 
         debugger; }).catch(
        e =&gt; {
          debugger;
          return "ERROR"; // THIS FIRES, BUT DOES NOT STOP THE CONSOLE ERROR
        });
        debugger;
      return {
        type: FETCH_FIVE_DAY_FORECAST,
        payload: request
      };
    } catch {
      debugger;
      console.log("Error!");  // DOES NOT HELP AS THE 404 IS NOT A JAVASCRIPT ERROR, IT'S A VALID SERVER RESPONSE
    }
  }
  </code></pre>
  
  <p>I am using a number of techniques to tr to catch the console error: </p>
  
  <ul>
  <li><p>.then()  ==> the code runs through this block, but the error has already happened, and has been written to the console!</p></li>
  <li><p>.catch()  ==> the code runs through this block if the interceptors are not configured i.e. comment out <code>axios.interceptors.response.use...</code> .</p></li>
  <li><p>try...catch ==> no effect (does not catch the network response as this is not really a javascript error!)</p></li>
  </ul>