title: Angular 2 delay before send http request
body: <p>I'm executing some requests in loop for the same API. On server-side I need to check the previous result to make some changes. But I can't see the previous result if requests are more than one in loop.</p>
  
  <p>in component:</p>
  
  <pre><code>this.service.createEmail(...).delay(5000).debounceTime(5000).timeout(5000).subscribe(...);
  </code></pre>
  
  <p>and in service:</p>
  
  <pre><code>createEmail(...): Observable&lt;Json&gt; {
      return this.http
              .post('url',
                JSON.stringify(model),
                { headers: this.headers })
              .delay(5000).debounceTime(5000).timeout(5000)
              .map((response: Response) =&gt; {
                  return this.responseService.extractData(response);
              })
              .catch(error =&gt; {
                  return this.errorService.handleError(error);
              });
          }
  </code></pre>
  
  <p>didn't help me.
  Needed imports exist.
  Just js setInterval helped me. </p>
  
  <p>How can I do delay before http request in other ways?</p>