我正在从Ionic App(Angular4(中提出HTTP请求,并以JS对象的形式接收响应,但是收到时,我会遇到一些错误。
这是我从API
接收的对象{"up_votes":"1","down_votes":"0"}
使用http.get在app,home.ts
中接收数据..
public vote_response:any={};
...
this.http.get(this.baseURI+'votesNum.php?'+this.question.question_id)
.subscribe(result =>{this.vote_response = result.json();});
这是我收到的错误:
ERROR SyntaxError: Unexpected token < in JSON at position 0
at JSON.parse (<anonymous>)
at Response.Body.json (http.es5.js:800)
at MapSubscriber.project (forum-quest-details.ts:44)
at MapSubscriber._next (map.js:77)
at MapSubscriber.Subscriber.next (Subscriber.js:89)
at XMLHttpRequest.onLoad (http.es5.js:1229)
at t.invokeTask (polyfills.js:3)
at Object.onInvokeTask (core.es5.js:4119)
at t.invokeTask (polyfills.js:3)
at r.runTask (polyfills.js:3)
任何人都可以帮助我解决这个问题。
this.vote_response = result.json();
用console.log(result)
替换此数据,然后获取数据并使用一些在线JSON验证网站(https://jsonlint.com(检查,以查看数据是否有效JSON。您可能会得到HTML身体而不是JSON。
作为json的响应:
header('Content-Type: application/json');
echo json_encode(array('up_votes'=>$up_votes, 'down_votes'=> $down_votes ));