如何在Angular 7中使用HttpParams获得特定值?

时间:2019-03-01 19:01:12

标签: angular angular-httpclient

我正在尝试通过传递字符串作为参数的HTTP请求从JSON文件中获取特定对象。但是我得到的结果是JSON文件中存在的所有对象。

例如: 我有以下示例.JSON:

[
 {"id": "AAA", "name": "foo"},
 {"id": "AAAB", "name": "bar"},
]

在ExampleService中,我具有以下代码:

getExampleById (id: string): Observable<Example> {
     return this.http.get<Example>('../assets/example.json', { params: new HttpParams().set('id', id)});}

URL为localhost:4200 / assets / example.json?id = AAA

我希望在传递参数id =“ AAA”时,仅返回{“ id”:“ AAA”,“ name”:“ foo”},但是HTTP响应返回所有JSON对象。

在ExampleComponent中,我已经:

getExampleById(id: string): void {
this.exService.getExampleById(id).subscribe((data: Example) => this.example = {

  id: data['id'],
  name: data['name'],

} );

page.html不会更新对象示例。我不知道问题出在哪里。我怀疑问题出在http响应中。

0 个答案:

没有答案