大家好,我使用Angular 4为我的前端从后端返回json但是它不是纯粹的json数据,而是返回我更多,我怎么能只返回json?是后端的问题还是我应该在前端做些什么?
我在方法的后端使用了codeigniter:
$this->FAM->list_app();
来自已经实施json_encode()
并从模型后端:
$arrayindex=array();
foreach($query->result_array() as $r){
$arrayindex[] = $r;
}
echo json_encode($arrayindex);
答案 0 :(得分:1)
您可以使用 res.json()
在frontEnd服务上执行此操作,然后访问 body
,
yourService(): Observable<any> {
return this._http.get('url')
.map(this.success)
.catch(this.fail);
}
private success(res: Response) {
if (!res || res.status !== 200) {
return [];
}
const data = res.json();
const results = data ? (data.message ? data.message : []) : [];
//return results;
return data;
}
private fail(error: Response | any) {
let errMsg: string;
if (error instanceof Response) {
const body = error.json() || '';
const err = body.error || JSON.stringify(body);
errMsg = `${error.status} - ${error.statusText || ''} ${err}`;
} else {
errMsg = error.message ? error.message : error.toString();
}
console.error(errMsg);
return Observable.throw(errMsg);
}