Wykonywanie wywołania HTTP Angular2 na serwerze w trybie offline nie dostarcza zbyt wielu informacji w jego obiekcie "error response", który dostaję do Obowiązkowego obserwatora (błędu) operatora lub delegata błędu subskrypcji (oba są wspólne dla same informacje). Ale jak widać na zrzucie ekranu konsoli, plik zone.js w jakiś sposób wyświetla błąd. Jak mogę uzyskać te szczegółowe informacje o błędzie (net :: ERR_CONNECTION_REFUSED)?Usługa Angular 2 http. Uzyskaj szczegółowe informacje o błędzie
Odpowiedz
Gdy serwer nie odpowiada, response.status będzie zawsze równa 0 (zero)
{
type: 3, //ResponseType.Error
status: 0, // problem connecting endpoint
}
Należy również pamiętać, kiedy wykonują żądanie CORS, ale pochodzenie (URL w przeglądarce) nie jest autoryzowane (nie na dozwolonej liście nazw hostów skonfigurowanych w zdalnym punkcie końcowym) odpowiedź byłaby podobna do powyższej, z wyjątkiem atrybutu type, który będzie równy 4 = Odpowiedź Type.Opaque ...
Oznacza to, że połączenie zostało nawiązane, ale na przykład żądanie OPTIONS zwrócone z nagłówkami, które nie zawierają pochodzenia lub żądanie HTTPS zostało wykonane ze źródła HTTP.
Bez wkopywania się w kod, moje oczekiwania są takie, że jeśli serwer jest nieosiągalny, wówczas nie można uzyskać odpowiedzi z serwera. Dlatego obiekt Response pozostaje jego stanem początkowym.
Możesz obsłużyć komunikaty o błędach, dzięki czemu są one łatwiejsze do odczytania. To na pewno może być rozszerzony na zbyt:
public Get() {
return this.http.get(this.URL).map(this.extractData)
.catch(this.handleError);
}
public extractData(res: Response) {
let body = res.json();
return body || {};
}
public handleError(error: any) {
let errMsg = (error.message) ? error.message :
error.status ? `${error.status} - ${error.statusText}` : 'Server error';
console.error(errMsg);
return Observable.throw(errMsg);
}
Nie, nie dostaniesz żadnego wskazania, że wystąpił błąd połączenia sieciowego za pomocą tego podejścia. – rook
- 1. Uzyskaj szczegółowe informacje o dostawcy członkostwa
- 2. Uzyskaj informacje o błędzie podczas korzystania z Eventmachine Http Request
- 3. Uzyskaj szczegółowe informacje dotyczące uprawnień
- 4. : szczegółowe informacje o błędzie aplikacji z powodu bycia wyświetlanym zdalnie
- 5. Uzyskaj szczegółowe informacje o dacie (dzień, miesiąc, rok) w GWT
- 6. Uzyskaj szczegółowe informacje na temat intencji Oczekujących
- 7. Jak uzyskać bardziej szczegółowe informacje o błędzie na zabitym zleceniu w Oozie
- 8. dostaję komunikat o błędzie z Kątowymi 2 http
- 9. Angular 2 HTTP uzyskać obsługę 404 błąd
- 10. Usługa Angular 2 AuthGuard z przekierowaniem?
- 11. Jak uzyskać szczegółowe informacje o urządzeniu w wersji szybkiej
- 12. Jak uzyskać szczegółowe informacje o procesie z jego pid
- 13. Jak uzyskać szczegółowe informacje o błędach z JAXB Validator?
- 14. Uzyskaj informacje o sprzęcie w systemie Android?
- 15. Uzyskaj informacje o żądaniu w widoku pomocnika
- 16. Uzyskaj informacje o automatycznym obrocie na Androidzie
- 17. Uzyskaj informacje o funkcjach dzwoniących w pythonie
- 18. Facebook iOS 6 - uzyskaj informacje o użytkowniku
- 19. Uzyskaj informacje o źródle zdarzenia z jQuery
- 20. Uzyskaj informacje o użytkowniku w Crashlytics
- 21. Uzyskaj informacje o kompilacji z Jenkins API
- 22. Uzyskaj informacje o użytkowniku w szablonach django
- 23. Uzyskaj informacje o DLNA z PHP
- 24. Jak uzyskać bardziej szczegółowe informacje o błędzie numpy dla „RuntimeWarning: nieprawidłowa wartość napotkanych w rozmnażajcie się” błędu
- 25. Ładowarka Angular 2 na każde żądanie http:
- 26. Angular 2 http post + Nodejs express
- 27. Angular 2 HTTP POST wywołuje OPCJE
- 28. Uzyskaj szczegółowe komunikaty o wyjątkach związanych z łańcuchem Java
- 29. Nadmiarowy komunikat o błędzie zgodności Swift 2
- 30. Debugowanie OpenGL lub szczegółowe informacje na konsolę
Zgadza się. typ 3 wskazuje na problem z siecią (choć nie jest to konkretny kod błędu). Więcej informacji można znaleźć tutaj: https://fetch.spec.whatwg.org/#responsetype i tutaj https://fetch.spec.whatwg.org/#concept-network-error Również status type == 3 to zawsze zero. – rook