Question: what is the difference between map and subscribe?
Answer: subscribe() returns a Subscription that can not be subscribed to, but it can be used to cancel the subscription. map() returns an Observable which can be subscribed to. Think map as a middleware which transforms the response. You need subscribe to run your async request.