javascript - Angular 2: Okänt 504-fel (Gateway Timeout)


Jag har ett problem med felhanteringen i min Angular 2-applikation. När backendservern är offline får jag detta okatchade fel i konsolen:

GET http://localhost:4200/api/public/index.php/data 504 (Gateway Timeout)

Min http.get i tjänsten ser ut så här:

getData(): Observable<any> {

let apiUrl = `${API_URL}data`;
this.http.get(apiUrl)
  .map((res => res.json() || []))
  .subscribe(response => {
    let data = [];
    let index = 0;
    if (typeof(response.data) !== 'undefined' && response.success !== false) {
      // add index to each entry
      response.data.forEach(entry => {
        data.push({
          id: index++,
          title: entry.title,
          others: entry.others
        });
      });
      this.dataCollection = data;
      this.subject.next(data);
    }
  }, error => {
    this.subject.error("The Server could not be reached. Please wait until a connection can be established, or reload the page.");
  });

    return this.subject.asObservable();
} 

Hur kan jag förhindra att Angular 2 skickar detta fel till konsolen?

Svar #1

Utan att veta vilken beroende du använder för dina HTTP-förfrågningar är det nästan omöjligt att avgöra ditt problem.

Jag har nyligen svarat på en annan fråga om HTTP(s)-förfrågningar i TypeScript: Http-förfrågan i TypeScript

Hoppas det här hjälper :)