【发布时间】:2019-07-20 16:33:23
【问题描述】:
我们有一个 OData v4 API,我们将其置于 Azure API 管理 (AAM) 服务之后,但在配置路由/操作时遇到了问题。简而言之,问题在于 AAM 将拒绝对路由/操作的查询,除非它被明确配置(您会收到 404 错误),但使用 OData 可以为每个操作的每个属性(属性)(端点)。问题很快变得无法控制。
OData 允许您查询单个属性/属性(例如 GET ~/api/Person(1234)/FirstName。如果我们将其放在 AAM 后面,我们需要将其定义为操作。只要有只有其中一些,但这可能意味着您必须快速定义成百上千的操作(除非我错过了什么)。我们有一个包含大约 35 个顶级操作的 API。每个资源平均有 20 个属性。那是 700我们需要定义的操作。除了所涉及的工作之外,这对于 AAM 开发人员门户的用户来说将是一次令人震惊的体验。
我希望有人能告诉我解决这个问题的简单方法。我知道我可以编写这些脚本的创建。如果您使用 OData $select 查询参数(这是我同时建议的),您也可以在一定程度上解决这个问题。我无法克服我在这里错过了什么的感觉。有没有办法为操作定义某种通配符部分(例如/Person/*)?我在 AAM 文档中找不到类似的内容。
【问题讨论】:
标签: odata azure-api-management