what happens if we does not subscribe to HttpClient request which return observables in angular

To understand the matter it's good to know there are hot & cold observables - the cold need to be subscribed otherwise they're not fired, the hot are fired no matter if something is subscribed to them.

Angular's HttpClient returns a cold Observable, so it's not fired until subscribed. To be sure if an observable is hot or cold you need to check corresponding docs, see for example HttpClient.post:

Constructs an Observable which, when subscribed, will cause the configured POST request to be executed on the server.

An example of an Angular's hot observable is e.g. ActivatedRoute.params - how to use - you see there is no subscription.

The fact an observable is hot/cold has more consequences than just having or not having to subscribe:

  • when subscribing, you should also unsubscribe in some cases to avoid memory leaks plus there is Angular's async pipe, which manages subscription for you; there is an article on the matter: Don't forget to unsubscribe (Angular specific)

  • there is a perfect article by Ben Lesh on the subject from a general point of view: Hot vs Cold Observables (not specific to Angular).