title: Angular 4. A series of http requests get cancelled
body: <p>When I try to make multiple http requests via http service in Angular 4,
  previous request get cancelled in Chrome (but they reach the server).
  Example:</p>
  
  <pre><code>const obs1 = this.http.get(`${API_URL}/transitions`);
  const obs2 = this.http.get(`${API_URL}/states`);
  obs1.subscribe();  
  obs2.subscribe(); // this will cancel obs1's http request
  </code></pre>
  
  <p>But if I replace <code>.subscribe()</code> to <code>.publish().connect()</code> like above, it will work correctly (no cancels)</p>
  
  <pre><code>const obs1 = this.http.get(`${API_URL}/transitions`);
  const obs2 = this.http.get(`${API_URL}/states`);
  obs1.publish().connect();
  obs2.publish().connect();
  </code></pre>
  
  <p>Or if I merge two <code>Observables</code> to one and then get subscribed like above, it will work correctly too</p>
  
  <pre><code>const obs1 = this.http.get(`${API_URL}/transitions`);
  const obs2 = this.http.get(`${API_URL}/states`);
  Observable.merge(obs1, obs2).subscribe()
  </code></pre>
  
  <p><strong>Why do I face this behavior? I need to understand, not bypass.</strong> How can I make series of requests <strong>without</strong> merging, forking etc.?</p>