我正在學習Angular 2,並試圖在頁面加載時調用一個簡單的HTTP Get請求,以獲取JSON數據並在頁面加載時處理該JSON。誰能告訴我一些基本的例子如何做到這一點?我從Beta版中看到大多數網絡解決方案。如何在Angular 2中調用簡單的http GET服務
2
A
回答
0
要獲得可觀察的,您可以按照下面的示例。 getStories
方法使用注入的HTTP服務並返回一個可觀察值,它可以進一步用於獲取響應。
@Injectable()
export class StoriesService {
constructor(private http:Http,private constService :ConstantsService) { }
public getStories()
{
this.http
.get(this.constService.apiBaseUrl + "Stories/Stories")
.subscribe ((data: Response) => console.log(data));
}
}
這是一個簡單的HTTP獲取服務示例。
3
創建類似的服務:
import { Injectable } from '@angular/core';
import { Http, Response } from '@angular/http';
import 'rxjs/Rx';
import {Observable} from 'rxjs/Rx'
export class MyService {
constructor(public http: Http) { }
private extractData(res) {
if (res.status < 200 || res.status >= 300) {
throw new Error('Bad response status: ' + res.status);
}
// console.log(res.json());
this.serviceData = (res.json());
return this.serviceData || {};
}
loaddata(): Observable<any> {
return this.http.get(this.server_url) // define a variable server_url to assign the requested url
.map(this.extractData);
}
}
現在在組件的ngOnInit
方法通過調用該服務的方法得到的值。
class MyComponent{
constructor(public _myService: MyService)
ngOnInit(){
this._myService.loaddata().subscribe(data => {
// do something with the data
})
}
}
相關問題
- 1. Angular 2 HTTP GET相當於Angular HTTP GET
- 2. Angular 2 http服務
- 3. Angular 2簡單HTTP獲取
- 4. Angular 2 Http的問題GET
- 5. Angular 2 HTTP服務(Youtube API)
- 6. Angular 2 HTTP服務問題
- 7. Angular 2同步Http服務
- 8. 配置Angular 2 HTTP服務
- 9. Angular 2:多個HTTP服務
- 10. Angular 2 - http get with Credentials
- 11. 簡單的http服務器
- 12. HTTP GET編碼Web服務調用
- 13. 簡單的http服務器
- 14. Angular 2 - 在管道內調用服務
- 15. 在自定義HTTP服務中添加服務Angular 2
- 16. 基於其他服務的Angular 2 http調用url
- 17. 如何使用Angular $ http服務從MongoDB REST API中檢索簡單數據?
- 18. 如何從Angular 2的指令中調用服務
- 19. Angular 2 - 如何模擬組件中調用的服務?
- 20. 獲取使用angular- $資源或一個簡單的get $ HTTP
- 21. 使用Angular 2中的參數對REST服務進行GET調用
- 22. 通過簡單HTTP GET/POST獲得JSON Web服務
- 23. Angular 2 Observable http服務錯誤處理
- 24. Angular 2 - 實例化(Http)服務手動
- 25. Ruby中的簡單HTTP服務器
- 26. 啓用簡單的HTTP服務器
- 27. Angular 2 - 在調用Web服務時如何捕獲401錯誤
- 28. Angular 2 - 鏈接Web服務調用
- 29. 如何在Angular 2中創建2個依賴的http請求
- 30. Angular在節點上的JS Web服務 - GET http://127.0.0.1 net :: ERR_CONNECTION_REFUSED
在.map()之後使用.subscribe總是很重要嗎? –
@techiequestie,是的,這很重要。由於API例如'loaddata'返回一個Observable,我們需要訂閱它來實際執行http請求。 – Emu