我正在使用angular 4.2.6作为我的应用程序。我有这样的服务
checkStaff(email: any) {
return this._http.post(this.url + "/Impsapi/getStaff", JSON.stringify(email)).map(
(resp) => resp
)
}
checkStaff(电子邮件:任何){ 返回 this._http.post(this.url + “/ Impsapi / getStaff”,JSON.stringify(电子邮件))。图( (RESP)=> RESP )
}
this.loginServ.checkStaff(this.user)
.subscribe(
userData => {
this._return = userData;
console.log(this._return);
}
);
服务器返回JSON作为响应。但是当我记录输出时,我得到以下内容 logged response
请我需要使用响应正文中的数据。我无法将._body转换为适当的json并用于应用程序。请帮忙
答案 0 :(得分:0)
响应数据采用JSON
字符串形式。应用程序必须通过调用res.json()
将该字符串解析为JavaScript对象。
return this._http.post(this.url + "/Impsapi/getStaff", JSON.stringify(email)).map(
(resp) => resp.json()
)
<强>更新强> 请尝试以下代码段
checkStaff(email: any) {
return this._http.post(this.url + "/Impsapi/getStaff", JSON.stringify(email))
.map(res => {return res.json()})
}
答案 1 :(得分:0)
试试这个:
this.loginServ.checkStaff(this.user)
.subscribe(
userData => {
this._return = userData.json();
console.log(this._return);
}
);
我的意思是你的checkStaff:
checkStaff(email: any): Observable<Response> {
return this._http.post(this.url + "/Impsapi/getStaff", JSON.stringify(email));
}
export classMyResp
{
id: string;
/*so on...*/
}
这会给你反应的主体如果有的话。
答案 2 :(得分:0)
我的问题解决了。我的PHP托管在wampserver上。在某种程度上,当我调用服务器时总是返回无效的JSON。我不得不使用ob_clean()
函数,一切都很好。