在 Apigee 中使用 Query DSL 库的经验
Posted
技术标签:
【中文标题】在 Apigee 中使用 Query DSL 库的经验【英文标题】:Experience with Query DSL Libraries in Apigee 【发布时间】:2014-03-11 07:54:35 【问题描述】:我面临一个设计问题,我们的许多 API 都使用各种自制的 Query DSL 构造来提供高级过滤和响应排序。
我想做的是基于我们的应用开发人员更熟悉的方案提供跨多个 API 的标准 DSL,并在我们的 API 之间带来一些一致性。
自然,这将导致解析和转换 DSL 查询到我们遗留后端的一些复杂性。但是,我希望通过采用现有框架来避免必须自己编写所有查询解析逻辑来快速开始。
是否有人使用过任何与 Apigee 平台兼容的开源 DSL 框架?
【问题讨论】:
我正在考虑下面的设计。 【参考方案1】:我没有使用 Apigee 的经验,但 Querydsl 可以用作查询 DSL 的基础。
它提供了一个基本查询模型,可以对其进行调整和扩展以适应自定义查询/存储目标。
这个答案是有偏见的,因为我参与了 Querydsl 项目。
【讨论】:
【参考方案2】:如果您的后端是 MS Stack - 那么我建议您探索 ODATA 和 *** example using ODATA。我发现这非常强大。
我假设您确实希望用户输入直接查询 - 我的意思是 HTTP 请求中的 SQL。 REST 本身是一个很好的基于实体的查询协议 - 一个好的 REST API itself 对于用户获取实体的思维导图非常有用。
【讨论】:
【参考方案3】:这是我需要的灵感。谢谢!
https://github.com/elasticsearch/elasticsearch
【讨论】:
以上是关于在 Apigee 中使用 Query DSL 库的经验的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Date Spring Query DSL 中计算不同的年份?
Elasticsearch Query DSL概述与查询过滤上下文