title: Fetch get canceled on async action server
body: <p>I have a fetch request like</p>
  
  <pre><code>fetch(`http://localhost:4000/test`, {
    method: 'GET',
    mode: 'cors',
    cache: 'no-cache',
    headers: {
      'Content-Type': 'application/json'
    }
  })
  .then(result =&gt; console.log('success'))
  .catch(error =&gt; console.log('error', error));
  </code></pre>
  
  <p>And a nodejs express router (express-promise-router) for the request</p>
  
  <pre><code>this.router.get('/test', (request: Request, response: Response) =&gt; {
    response.status(200).send({'status': 'ok'});
  });
  </code></pre>
  
  <p>When the fetch gets called the success is logged. So that's good.
  But when I change the nodejs router function to async like</p>
  
  <pre><code>this.router.get('/test', (request: Request, response: Response) =&gt; {
    return asyncFunction().then(result =&gt; response.status(200).send({'status': 'ok'}));
  });
  </code></pre>
  
  <p>The fetch gets canceled and the console log displays <code>TypeError: Failed to fetch</code>.</p>
  
  <p>When I call the /test api with the browser URL or Postman I get a successful result.
  I can't figure out why the fetch is failing. (Also tried it with Axios with the same result).</p>