【发布时间】:2018-10-30 22:59:35
【问题描述】:
我正在使用 Angular 4 应用程序,在此我需要从我的服务文件中调用 API。
这里我每隔15分钟调用一次服务文件中的方法。但是它显示错误如下
但是如果我在不传递参数的情况下调用 API,它工作正常,当我从服务调用将参数传递给 API 的方法时,它不会被触发。
服务方式
update_User_Session() {
this.publicIp.v4().then(ip => {
this.END_USER_SESSION(ip)
})
this.publicIp.v4().then(ip => {
this.INSERT_USER_SESSION(ip)
})
}
INSERT_USER_SESSION(address: string) {
this.http.get(`http://localhost:xyz/api/data/INSERT_USER_SESSION/?IP_Address=${address}&Time=${this.date_and_time}&state=${this.session_Begin_Status}`)
}
END_USER_SESSION(address: string) {
this.http.get(`http://localhost:xyz/api/data/INSERT_END_USER_SESSION/?Ip_Address=${address}&Time=${this.date_and_time}&state=${this.session_End_Status}`)
}
来自我的组件
constructor(private CartdataService: CartdataService, private http: HttpClient) {
this.call = Observable.interval(90000)
.switchMap(() => this.CartdataService.update_User_Session())
.subscribe((data) => {
console.log(data);
});
}
这行.switchMap(() => this.CartdataService.update_User_Session()) 变成了红线,并显示了上述错误,如图所示
谁能告诉我,我在哪里做错了。
【问题讨论】:
-
你的
update_User_Session应该返回Observable,但你返回null
标签: angular