HTTP isteğimde, API hatası geri dönüşünün değerini yakalama yoluyla elde etmeyi başardım. Sorunum, hizmeti çağırdığımda, bileşenimin HTTP yakalamasının dönüş değerini nasıl alabilirim. HTTP yakalamasından ayrıştırma hatası - Açısal 2
this.loginService.login(this.model.username,this.model.password)
.subscribe(
data => console.log("data"),
error => {
console.log(error);
},
() => console.log("Finished")
);
ve bu krom geliştirici araçları içinde
konsolunun geri dönüşüdür: Bu benim login.component benim kodlogin(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(new Error(details));
});
}
geçerli:
Bu
benim HTTP hizmetinde benim kodudur .log:Error: [object Object](…)
Ama http hizmet yakalama gerçek dönüş şudur: { "hata": "invalid_credentials", "ERROR_DESCRIPTION": "geçersiz kimlik bilgileri"} ve bu senin .catch()
, değişikliğinde login.component içinde
Anlamıyorum. Konsolda ne almak istediğin değil? Onun yerine ne istersiniz? – BeetleJuice
Hizmetin gerçek dönüşü şudur: {"hata": "invalid_credentials", "error_description": "geçersiz kimlik bilgileri" ve bu i bileşenine almak istiyorum –
bileşeninde "error.error_description" bileşenini deneyin . – Sefa