Unfortunately Promises need to be fixed before fetch will be sane and here's how the promises spec currently looks:
- unhandled errors silently swallowed [1] (this is the case for the most popular polyfill [1] too - the one recommended by fetch polyfills, BEWARE [3])
- no 'finally' method, despite pretty much everything in a UI needing some common 'cleanup' after e.g. a fetch()
- not cancellable
Right now you're better off with `$.ajax` (maybe make a custom build of jQuery) or a promise-like library like reqwest [2], rather than fighting with fetch.
That depends on whether the Promise specification gets cancellations. I like fetch's clean API, but being able to cancel my ajax requests is essential.