Default HTTP requests in angular format emit observables. It can be converted to a promise by calling toPromise (). But this is optional. Angular unsubscribes from http request as soon as it is resolved by calling
'_xhr.removeEventListener('load', onLoad); _xhr.removeEventListener('error', onError); _xhr.abort();'
Observables may be canceled, but promises not.
An open request remains even after the component is destroyed, which leads to a memory leak, which can be prevented by writing off the observable or by calling the destruction method as soon as the component is destroyed. Unsubscribe methods to prevent memory leaks
Conclusion: it is better to use observables with methods to prevent memory leaks.
source share