无法提取 angular 4 JSON 格式的正文响应

Unble to Extract the _body response in angular 4 in JSON format

我正在为我的应用程序使用 angular 4.2.6。我有这样的服务

checkStaff(email: any) {

  return this._http.post(this.url + "/Impsapi/getStaff", JSON.stringify(email)).map(
    (resp) => resp
  )

}

checkStaff(电子邮件:任意){ return this._http.post(this.url+"/Impsapi/getStaff",JSON.stringify(电子邮件)).map( (响应)=>响应 )

}

this.loginServ.checkStaff(this.user)
  .subscribe(
    userData => {
      this._return = userData;
      console.log(this._return);
    }
  );

服务器 returns JSON 作为响应。但是当我记录输出时,我得到以下信息 logged response

我需要使用响应正文中的数据。我无法将 ._body 转换为正确的 json 并用于应用程序。请帮忙

响应数据为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()})


  }

试试这个:

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...*/
}

这会给你回复正文如果有的话。

我的问题解决了。我的 PHP 托管在 wampserver 上。在某种程度上,当我调用服务器时总是返回无效 JSON。我不得不使用 ob_clean() 函数,一切正常。