While using angular HttpClient of angular I got to know that HttpClient post method used cold observable and will make 2 separate calls to post data to the server.And also unless you will not subscribe the post method it will not post data to the server.
Although, Rxjs cold observable says it will hold all the sequence until the the end and fire all when it subscribed.
How it will make 2 separate call to server to post data.
I don't believe that this behavior is caused by the use of observables.
Rather I suspect that the browser is issuing a pre-flight OPTIONS request as a 'handshake' with the server to determine whether the CORS protocol is understood. This precedes the POST request and is possibly why you get 2 calls to the server to post data.