猿问

@Interval中的nestJs httpService.get请求没有反应

我有一个注入了 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);

        }));

  }

 :

 :

}


慕的地8271018
浏览 148回答 1
1回答

慕哥6287543

NestHttpService 使用RxJSObservables。要触发请求,您需要添加.subscribe() 或制作函数async并添加.toPromise()。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答