nestJs httpService.get 请求@Interval 没有反应
nestJs httpService.get request in @Interval has no reaction
我有一个注入了 HttpService 的服务,并使用 @Interval(20000) 启动请求。在间隔函数中,我使用 this.http.get(...) 向另一台服务器发出请求,但我没有看到任何反应,无论是请求还是异常。我只看到控制台日志“handleInterval”!
怎么了?
:
import {HttpException, HttpService, Injectable} from '@nestjs/common'
@Injectable()
export class AppService {
constructor(private readonly http: HttpService) {}
@Interval(20000)
handleInterval() {
console.log('handleInterval');
let response = this.http.get('192.168.0.162:8081/diag.fhtml', {responseType: 'arraybuffer'}).pipe(
map(res => {
console.log('received data');
return res.data;
}),
catchError(e => {
console.error(e);
throw new HttpException(e.response.data, e.response.status);
}));
}
:
:
}
Nest 的 HttpService
使用了 RxJS
Observables。要触发请求,需要添加.subscribe()
或 使函数async
并添加.toPromise()
.
我有一个注入了 HttpService 的服务,并使用 @Interval(20000) 启动请求。在间隔函数中,我使用 this.http.get(...) 向另一台服务器发出请求,但我没有看到任何反应,无论是请求还是异常。我只看到控制台日志“handleInterval”! 怎么了?
:
import {HttpException, HttpService, Injectable} from '@nestjs/common'
@Injectable()
export class AppService {
constructor(private readonly http: HttpService) {}
@Interval(20000)
handleInterval() {
console.log('handleInterval');
let response = this.http.get('192.168.0.162:8081/diag.fhtml', {responseType: 'arraybuffer'}).pipe(
map(res => {
console.log('received data');
return res.data;
}),
catchError(e => {
console.error(e);
throw new HttpException(e.response.data, e.response.status);
}));
}
:
:
}
Nest 的 HttpService
使用了 RxJS
Observables。要触发请求,需要添加.subscribe()
或 使函数async
并添加.toPromise()
.