nestjs 中请求 fastapi 获取响应值记录

nestjs 中请求 fastapi 获取响应值

背景

项目需求, 在 nestjs 中请求 fastapi 后端服务, 获取响应值, 再进行一些业务处理.

使用

可以使用 nestjs 的 http 模块
	官方文档: https://docs.nestjs.com/techniques/http-module

实例

  const fd = new FormData()

  fd.append('file', file.buffer, file.originalname)
  fd.append('oss_path', ossPath)
  fd.append('size', file.size)

  const httpService = new HttpService()

  const res = await httpService
    .post(environment.ApiServers.vmp_api_upload, fd, { headers: fd.getHeaders() })
    .toPromise()

  if (res.data.code == StatusCode.SuccessCode && res.status == EHttpStatus.Success) {
    return res.data.data
  } else {
    throw new HttpErrorResponse(`文件上传错误, 异常信息: ${res.data}`)
  }

问题点记录

ts 访问 py 后端时, 出现了 There was an error parsing the body 异常.

通过 py 端打印 request 参数, 发现其数据格式不正确, 没有正确的使用 header 头(当然, 上面的代码是正确的, 这里只记录爬坑过程)

然后通过, nestjs 文档, 看到是基于 npm axios 构建, 通过查阅github库: https://github.com/axios/axios#request-config
发现了 正确的 form 表单 使用方法.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值