2017-11-30 6 views
-2

サービスは、バックエンドからJSONデータを取得:コンポーネントで明確なhttp-requestデータを取得するにはどうすればよいですか?

ngOnInit() { 
    this.getAllUsersData(); 
} 
private getAllUsersData(): void { 
    this.usersService.getUsers().subscribe(
    data => {  
     this.allUsersData = JSON.parse(data.json());     
     console.log(this.allUsersData); 
    }) 
}; 

しかし、私はサービスにこのデータを処理し必要があります:コンポーネントで

constructor(private http: Http) { }; 
getUsers(): Observable<any> { 
    return this.http.get('http://127.0.0.1:8000/app_todo2/users_list'); 
}; 

、このデータが処理されます。そして、私はコンポーネントの明確なデータを取得する必要があります:

private getAllUsersData(): void { 
    this.usersService.getUsers().subscribe(
    data => {  
     this.allUsersData = data;     
     console.log(this.allUsersData); 
    }) 
}; 

私を助けてください。

+1

あなたの質問に – Sajeetharan

+0

https://angular.io/guide/httpを読んで(あるいは、もしください明確ではありませんhttps://v2.angular.io/docs/ts/latest/guide/server-communication.html)の理由で非推奨のクライアントを使用する必要があります**。また、 '.json()'はあなたのために応答を解析するので、 'JSON.parse(data.json())'は実際には意味がありません。 – jonrsharpe

+0

https://angular.io/tutorial/toh-pt6#httpclientget-returns-response-data – Und3rTow

答えて

0

地図サービス上データ:

getUsers(): Observable<any> { 
     return this.http.get('http://127.0.0.1:8000/app_todo2/users_list') 
       .map(data => data.json()); 
    } 

その後:

private getAllUsersData(): void { 
    this.usersService.getUsers().subscribe(
    data => {  
     this.allUsersData = data;     
     console.log(this.allUsersData); 
    }) 
}; 
関連する問題