该HttpClient的方法允许您设置PARAMS在它的选项。
您可以通过从@ angular / common / http包导入HttpClientModule来配置它。
import {HttpClientModule} from '@angular/common/http';
@NgModule({
imports: [ BrowserModule, HttpClientModule ],
declarations: [ App ],
bootstrap: [ App ]
})
export class AppModule {}
之后,您可以注入HttpClient并使用它来执行请求。
import {HttpClient} from '@angular/common/http'
@Component({
selector: 'my-app',
template: `
<div>
<h2>Hello {{name}}</h2>
</div>
`,
})
export class App {
name:string;
constructor(private httpClient: HttpClient) {
this.httpClient.get('/url', {
params: {
appid: 'id1234',
cnt: '5'
},
observe: 'response'
})
.toPromise()
.then(response => {
console.log(response);
})
.catch(console.log);
}
}
对于版本4之前的角度版本,您可以使用Http服务执行相同的操作。
该Http.get方法接受一个对象,该器具RequestOptionsArgs作为第二参数。
该对象的搜索字段可用于设置字符串或URLSearchParams对象。
一个例子:
// Parameters obj-
let params: URLSearchParams = new URLSearchParams();
params.set('appid', StaticSettings.API_KEY);
params.set('cnt', days.toString());
//Http request-
return this.http.get(StaticSettings.BASE_URL, {
search: params
}).subscribe(
(response) => this.onGetForecastResult(response.json()),
(error) => this.onGetForecastError(error.json()),
() => this.onGetForecastComplete()
);
Http类的文档具有更多详细信息。它可以发现这里和工作的例子在这里。