【问题标题】:Should we have multiple API endpoints per application in Azure API Management to call through to a single API application?我们是否应该在 Azure API 管理中为每个应用程序设置多个 API 端点来调用单个 API 应用程序?
【发布时间】:2021-10-05 12:41:33
【问题描述】:

我有一个位于 Azure API 管理 (APIM) 后面的 API。此外,我有一些独立的应用程序需要通过 APIM 使用这个 API(比如说,应用程序 A 和应用程序 B——它们都是函数应用程序)。我的问题是,我是否在 APIM 中为每个函数应用创建两组单独的 API 以使用单个 API?还是应该通过相同的 APIM API 发送它们?什么是最佳实践?我已经搜索了 Microsoft,但还没有明确找到任何东西。

此外,如果它们是两个使用 API 的 SPA 会有所不同吗? (假设一个消费者水疗应用和一个管理水疗应用)

【问题讨论】:

    标签: c# .net azure azure-api-management apim


    【解决方案1】:

    一般方法是围绕 APIM 中的 API 使用方式来构建 API。在 APIM 中将单个 API 表面拆分为单独的产品/API/操作允许您指定不同的策略、访问要求,在日志和分析等中分别查看这些调用。因此,如果在您的场景中您不需要区分两个应用程序,则无需拆分任何内容。

    但是假设您希望一个应用使用证书身份验证,而另一个应用依赖订阅密钥 - 这将是在 APIm 中拥有两个产品的好案例。

    同样,假设一个应用只需要一组操作,而另一个应用需要不同的操作 - 这是拆分为多个 API 的有力案例。

    如果所有其他方法都失败了,将 API 拆分为逻辑块仍然有意义。根据您的学科领域,您可能有:

    • 订单 API
    • 用户 API
    • 产品 API 等等

    【讨论】:

      猜你喜欢
      • 2021-03-14
      • 1970-01-01
      • 2016-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-01
      • 2020-06-03
      相关资源
      最近更新 更多