angular2的網絡請求和4還是有很大區(qū)別的,寫一個項目的話肯定會用到http服務,除非你都是靜態(tài)頁,這只是一個最基本的、深入的拓展即可,希望能夠幫助大家吧,謝謝
首先如果你想用這個服務、那么你需要在app.module.ts中引入如下:
imports: [
BrowserModule,
HttpModule,
RouterModule.forRoot(routes),
IonicModule.forRoot(MyApp,{
tabsHideOnSubPages: 'true' //隱藏全部子頁面tabs
})
],
在所需要的面引入http:
import {Http, ResponseOptions,Headers,HttpModule,URLSearchParams} from "@angular/http";
然后注入:
constructor(private http:Http) {}
不帶參數(shù)的post
this.http.post(randomUserUrl)
.map(res => res.json())
.subscribe(function (data) {
alert(JSON.stringify(data));
},err =>{
console.error('ERROR', err);
});
不帶參數(shù)的get
this.http.get(randomUserUrl)
.map(res => res.json()) // (5)
.subscribe(data => {
alert(JSON.stringify(data));
},err =>{
console.error('ERROR', err);
});
帶參數(shù)的??注意post與get傳參數(shù)方式不一樣!
帶參數(shù)的post, 注意一定要引入 URLSearchParams,要不請求是失敗的:
let d1 = new URLSearchParams();
d1.append('key', 'value' );
d1.append('key', 'value' );
d1.append('key', ‘value’);
this.http.post(randomUserUrl,d1)
.map(res => res.json())
.subscribe(function (data) {
alert(JSON.stringify(data));
});
帶參數(shù)的get
let dates ={
放參數(shù)keyvalue
};
this.http.get(randomUserUrl,{params: dataes})
.map(res => res.json()) // (5)
.subscribe(data => {
alert(JSON.stringify(data));
},err =>{
console.error('ERROR', err);
});
今天就介紹到這,謝謝