Ich versuche, eine HTTP-Anfrage und danach das Antwortobjekt oder bool. Es spielt keine Rolle, welcher. Aber ich kann den Fehler nicht verstehen. Ich habe eine HandleError-Funktion, aber es funktioniert nicht wirklich.Wie bekomme ich Statuscode in http Anfrage in Angular2
Mein Code sieht jetzt so aus.
Der Service
updateProduct(product: Product): Promise<number> {
return this.http.put('/api/products/1' + product.id,product)
.toPromise()
.then(response => response.status)
.catch(this.handleError);
}
private handleError(error: any): Promise<any> {
//console.error('An error occurred', error); // for demo purposes only
return Promise.reject(error.message || error);
}
Die Speicherfunktion
onSave(): void {
this.productService.updateProduct(this.product)
.then(() => this.goBack())
.catch(er => console.log(er));
}
Wie kann ich diese Arbeit bekommen?
so sind Sie '4xx' Statuscode als Antwort bekommen? –
Was meinst du mit "funktioniert nicht wirklich." Denken Sie daran, Sie können den gleichen Handler sowohl für den Erfolg als auch für den Fehler verwenden. Sie senden es nur verschiedene Informationen basierend auf welche Antwort (Erfolg oder Misserfolg) erhalten Sie. In diesem Handler können Sie basierend auf diesen Informationen festlegen, was Sie wollen. Wenn der Handler also "error" bekommt, gib das zurück, andernfalls gib das zurück. –