title: res.render() and res.redirect() behave like res.send()
body: <p>I'm trying to use <code>fetch</code> for simple post request:</p>
  
  <pre><code>const headers = new Headers({
    Accept: 'application/json',
    'Content-Type': 'application/json',
  });
  
  fetch('/checkout/billing', {
          headers,
          body,
          credentials: 'include',
          method: 'POST',
        })
        .catch(console.error);
  </code></pre>
  
  <p>and the server side endpoint looks like:</p>
  
  <pre><code>if (!validateResult) {
          res.redirect('/checkout/shipping');
        } else {
          view.render('checkout/billing')
        }
  </code></pre>
  
  <p>So when I'm using regular HTML form submit it works fine (redirects or renders), but when I'm using <code>fetch</code> instead of redirecting or rendering I receive HTML body as response, like if I would use <code>res.send(html)</code>, any idea what can cause this issue? </p>