ich bei der Rückkehr ein Objekt in meinem Http Service im Fang meiner Komponente ein Problem mit:Return HTTP-Statuscode in der Komponente von Dienst - Angular 2
Hier ist mein Code in meinem Dienst:
login(username,password){
let headers = new Headers();
headers.append('Content-Type','application/json');
return this.http.post(this.configEnvironment.url() + "oauth/access_token",
JSON.stringify(
{
username: username,
password: password,
grant_type: "password",
client_id: "xxxx",
client_secret: "xxxxx"
}
),
{ headers }
)
.map(res => res.json())
.catch((err:Response) => {
let details = err.json();
return Observable.throw(details);
});
}
Hier ist mein Code in meiner Komponente:
this.loginService.login(this.model.username,this.model.password)
.subscribe(
data => console.log(data),
error => {
// var details = error.json();
console.log(error);
},
() => console.log("Finished")
);
Es funktioniert gut, wenn ich die json Fehler wie diese nur zurückgeben:
let details = err.json();
return Observable.throw(details);
Aber wenn ich versuche, den http-Antwort-Statuscode wie folgt hinzuzufügen:
return { status: err.status, error: Observable.throw(details) }
Es gibt mir einen Fehler von:
„Argument des Typs‚(err: Response) => {Status: Nummer; Fehler: ErrorObservable; } 'kann keinem Parameter vom Typ zugewiesen werden' (err: any, gefangen: Observable) => ObservableInput '. Typ '{Status: Nummer; Fehler: ErrorObservable; } 'kann nicht dem Typ' ObservableInput 'zugewiesen werden. Typ '{Status: Nummer; Fehler: ErrorObservable; } 'ist nicht dem Typ' ArrayLike < {}> 'zuweisbar. Eigenschaft 'Länge' fehlt im Typ '{Status: Nummer; Fehler: ErrorObservable; }‘.“
Mein Ziel nur den HTTP-Response-Code in der Rückkehr des Fanges enthalten ist.
Dank Man arbeitet diese! –
Willkommen. Ich möchte Sie nur informieren, gestern haben Sie eine Frage gestellt und ich habe geantwortet. Die Antwort war richtig und sofort hast du sie gelöscht. Tun Sie es nie, da es anderen Benutzern helfen könnte, Problem und Lösung zu finden, wenn sie auf die gleiche Situation stoßen. – micronyks
Hoppla, tut mir leid, Mann und ja werden es nie wieder tun. Danke noch einmal! –