cool 中的node.js 实现一个处理第三方Api 数据的处理

1.需求

你现在是一个后端 前端跟你要一个接口 ,但是你发现 你这个接口 除了调用第三方Api的接口 有的数据还是没有 你直接返回 前端使用不了 因为都没有关于那样的数据 但是三方Api 中有其他的接口和现在的接口 经过处理 是可以实现这个前端需要的数据。遇到这样的情况 cool Node.js框架,其实是和Java 中的sping boot是相似的。都是由controller 和 service

我认为所有的后端框架 目前都类似 只要不是写基础的代码 基本的逻辑都一样

java php cool go 在现在现代框架的基础上 框架的基本逻辑都一样 写法不一样而已

2.实现

controller代码

现在你看到的是一个接口 我的post 是封装了一个 方法 所以调用直接就相当于发起了post请求 向三方Api 经过处理这样可以获取到数据

肯定我的代码你们不能使用 但是我是想告诉你们基本的逻辑 在三方API 没有对应的接口的情况下 我们只能暂时这样处理

复制代码
  @Get('/FilmDate', { summary: '获取这个影片在城市下的所有有排期的日期数组' })
  async FilmDateList(@Query() query) {
    const url = '/api/xxx/xxx/cinemaShowList';
    const cinemaListUrl = '/api/xxx/xxx/cinemaList';
    try {
      let cinemaInfo = {
        currentPage: 1,
        pageSize: 99,
        filmId: query.filmId,
        areaId: query.areaCode,
      };
      const allCinemaList = await this.mangoRequestService.post(
        cinemaListUrl,
        cinemaInfo
      );
      if (!allCinemaList.list.length) {
        return this.ok([]);
      }
      const aggrementList = await this.mangoRequestService.post(url, {
        filmId: query.filmId,
        cinemaId: allCinemaList.list[0].id,
      });
      let date = [];
      aggrementList?.forEach(item => {
        if (item.showDate) {
          date.push(item.showDate);
        }
      });

      return this.ok([...new Set(date)]);

      // const MovieList = await this.getList(query);
      // console.log(MovieList, 'MovieList');
    } catch (error) {
      throw new CoolCommException(error.message);
    }
  }
相关推荐
明月_清风6 小时前
Deno 终局来了:从挑战 Node 到被 Cloudflare 收编
前端·后端·node.js
guslegend10 小时前
脚手架原理与本地调试:从 bin 软链接到 npm link
前端·npm·node.js·脚手架·前端工程化
zReadonly12 小时前
不用反复 nvm use 了:nvm-windows 2.x 按项目自动切换 Node.js
前端·node.js
百度一下吧16 小时前
Fastify 实战教程:从零搭建电商平台后台服务系统
node.js
YIAN16 小时前
LangGraph 完全入门指南:从线性工作流到带中断恢复的有状态 Agent 编排
langchain·node.js·agent
DevUp17 小时前
Directus 换掉 GPL 之后,Node.js CMS 到底怎么选?(二)
开源·node.js·cms
濮水大叔17 小时前
AI 编码实战:一句提示词,实现 CRUD、SSR 与多任务
node.js·ai编程·全栈
yume_sibai18 小时前
01-Node.js环境安装与基础
node.js
damoluomu18 小时前
Directus 换掉 GPL 之后,Node.js CMS 到底怎么选?(二)
node.js