在我的NestJS应用程序中,我想返回http调用的结果。

按照NestJS HTTP module的示例,我正在做的很简单:

import { Controller, HttpService, Post } from '@nestjs/common';
import { AxiosResponse } from '@nestjs/common/http/interfaces/axios.interfaces';
import { Observable } from 'rxjs/internal/Observable';

@Controller('authenticate')
export class AuthController {

  constructor(private readonly httpService: HttpService) {}

  @Post()
  authenticate(): Observable<AxiosResponse<any>> {
    return this.httpService.post(...);
  }
}

但是从客户端我得到500,服务器控制台在说:

最佳答案

此问题来自axios库。为了解决这个问题,您必须提取data属性:

return this.httpService.post(...)
  .pipe(
    map(response => response.data),
  );

关于node.js - NestJS返回HTTP请求的结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50355670/

10-09 16:06