使用Angular路由发送Http请求?

问题描述 投票:0回答:2

我正在使用Angular 8,Ionic 4并尝试通过缓存减少服务器调用

我有一个返回Observable的搜索服务。

我想知道是否可以使用路由器访问该服务中的功能。

例如:在类似{path:'api /:func /:term',component:ApiComponent}

的路由中

然后在页面中,我将发出请求以请求api路由,例如:http.get('/ api / search-cars / corvette')将路由到searchCars(term:string)函数,并以corvette作为参数。这是一个过滤器函数,返回RXJS存储中数组的一部分。

这样做的目的是能够缓存该请求的URL,以便每次对数据进行排序时都不会命中服务器。

[当我尝试挂钩时,出现404错误。有没有创建内部API的方法?

angular rest http ionic-framework router
2个回答
1
投票
1-ShareReplay:您保留对订户doc的请求的位置>

2-存储:将请求数据保存在客户端存储(例如本地存储或其他内容)

listUsers(): Observable<User[]>{ const storageUsers = localStorage.getItem('users'); return storageUsers ? of<User[]>(storageUsers) : this.http.get<User[]>(`some-end-point/users`) .pipe( tap(users => localStorage.setItem('users', users)) ); }

3- Redux Doc


1
投票
© www.soinside.com 2019 - 2024. All rights reserved.