NestJS如何调用第三方接口
sonder 大杯

当我把项目部署到刚买的良心云服务器之后,发觉项目中的一个第三方接口出现了跨域问题,于是将该接口放到服务器端调用,以此解决跨域问题

HttpModule

引入HttpModule模块,具体如下

1
2
3
4
import { HttpModule } from '@nestjs/common';
@Module({
imports: [HttpModule]
})

在service模块引入将要使用的HttpService

1
2
3
4
5
6
7
8
9
import { Injectable,HttpService } from '@nestjs/common';
// 在构造器中声明属性
constructor(private readonly httpService: HttpService) {}


async getData (): Promise<any> {
const response = await this.httpService.get('https://xx.xx/xx').toPromise();
return response.data;
}

OK,到此就完成了在服务器端调用三方接口的需求,其实现在看也不是很难,只是在刚开始的时候,走了一点弯路,不过最终还是解决了该问题。

跨域是由同源策略引起的,这是浏览器的安全机制。当一个请求url的协议、域名、端口三者之间任意一个与当前页面url不同,就会跨域。(一般情况下,跨域皆由服务器端处理)

  • 本文标题:NestJS如何调用第三方接口
  • 本文作者:sonder
  • 创建时间:2021-03-19 21:07:21
  • 本文链接:https://sonderss.github.io/2021/03/19/NestJS如何调用第三方接口/
 评论