I think we should revert to just reject with xhr. errorThrown is undefined most of the time. Only exceptions are timeout and other network level errors.