aem - AEM 如何解析 JSON 扩展?

标签 aem sling

在 CQ 中,如果我请求诸如 localhost:4502/content/geometrixx/en.json 之类的资源,我将获得 JSON 格式的节点信息。这同样适用于 XML 扩展。
我的问题是,如果URL扩展名是json,那么节点信息以JSON格式呈现是在哪里实现的? 基本上,扩展名只是简单的文本和 URL 结构的另一部分。简单地附加 json 不会神奇地获取 JSON 格式的信息。
显然,我们必须使用这些信息来编写以 JSON 格式返回节点信息的逻辑。

我正在尝试了解 CQ 的内部运作方式。也许获取 JSON 的概念在 Apache Sling 中也是相同的?我不知道这是否是CQ特有的,但要点是一样的。我也尝试过 /system/console/jcrresolver ,但没有帮助。

最佳答案

这是 Apache Sling 的一个功能。所有 GET 请求都会调用 DefaultGetServlet。 servlet 检查请求的扩展并使用相应的渲染器(如果已启用)。

查看DefaultGetServlet的代码以及此 directory 中的渲染器例如 HTML renderer , JSON rendererXML renderer .

文档位于此处:https://sling.apache.org/documentation/bundles/rendering-content-default-get-servlets.html

关于aem - AEM 如何解析 JSON 扩展?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35965947/

相关文章:

aem - 如何设置资源属性

osgi - 获取对 (Mock)ResourceResolverFactory 的引用

extjs - 是否可以在不使用自定义小部件的情况下将单个对话框字段映射到多个 JCR 属性?

aem - 如何在AEM中从某个数字循环到某个数字?

css - 一个页面上的多个 Parsys

java - 需要帮助在 Adob​​e CQ 5.4 中实现页面激活事件监听器

java - AEM session 对象未被垃圾收集

aem - Sling resource.getResourceResolver() 与 SlingHttpRequest.getResourceResolver

java - Sling - 返回具有多个参数的方法

java - 在 sling servlet 中调用除 doGet 或 doPost 之外的不同方法