用于第三方 API 调用的 Web 应用体系结构

Web app architecture for third party API calls

本文关键字:Web 应用 体系结构 调用 第三方 API 用于      更新时间:2023-09-26

我正在构建一个简单的搜索引擎,它将用户提交的搜索查询作为输入并输出适当的搜索结果列表。 搜索查询最终会发送到第三方 API,该 API 会完成生成搜索结果的繁重工作。

有两种方法可以处理此工作流:

  1. 我的服务器接受用户请求,查询第三方API,并将结果返回给用户

  2. 将此责任转移到客户端;客户端直接查询第三方 API。

在这两种方法之间进行选择时有哪些注意事项?

使用选项 #1 具有一些优势,例如:

  • 一个视图只有一个 API。它为您的架构带来了一些清晰度。
  • 您可能有很多页面/窗口/任何东西使用相同的搜索 API。如果第三方 API 更改或移动到另一个域,或者执行某些操作导致您更改代码,则只能在服务器上修复一个 API 方法,而不是修复所有客户端。
  • 您可以使用搜索查询执行一些其他更改,例如在第三方搜索引擎无法自行翻译时进行翻译。从形式上讲,您可以实现一些额外的逻辑。

使用选项 #2 可减轻服务器的负担。