【问题标题】:How can I get header from Drupal via ReST/AJAX call如何通过 ReST/AJAX 调用从 Drupal 获取标头
【发布时间】:2015-08-03 16:01:18
【问题描述】:

我有一个 Drupal 7 站点,它与 Play2 Java 应用程序集成,因此 Play 应用程序是我的 Drupal 应用程序的子应用程序。我能够从我的 Drupal 菜单无缝地路由到 Play 应用程序。所以,既然我有一个菜单可以提供到 Play 和 Drupal 页面的正确链接,我希望两者都共享同一个菜单,实际上标题(包括菜单)和页脚(也包括菜单)是我想要的可以通过让 Play 应用程序调用 Drupal 中的 ReST 服务来获取页眉和页脚并将它们传递给 Play 模板,或者更好的是,让 Play 模板通过 AJAX 调用 Drupal 端并获取要在 Play 页面上绘制的页眉和页脚块。

我查看了服务、RestW 和 RESTful 模块,但不知道如何使用它们完成此任务。

我认为在某个地方,有人需要从 Drupal 站点获取页眉和页脚部分,以便他们可以在一个地方维护这些内容,即使他们使用不同的“工具”提供不同的页面。

非常感谢任何帮助。

【问题讨论】:

    标签: ajax rest drupal-7 playframework-2.0


    【解决方案1】:

    您的问题不清楚,所以我们只能根据答案拍摄...

    首先,即用型解决方案存在的可能性几乎为零。我不知道 Drupal,但也许有一些扩展/插件可以创建 ie。谷歌的站点地图作为 XML 文件,所以你可以阅读这个 ie。使用 Play's WS API 并在 Play 端渲染菜单。

    其他解决方案是您可以创建 Drupal 的插件,该插件将在单独的路径上以现成的 HTML 公开这些菜单,以便您可以通过 WS API 单独获取它们并显示在 Play 上

    最后,您可以使用 WS API 获取主 Drupal 页面源代码(或其他两个菜单都可用的地方),然后对其进行解析,即使用 JSOUP 库仅剪切菜单的 HTML 部分。

    在所有情况下,您都应该在 Play 端缓存收集的 sn-ps,以防 Drupal 暂时不可用,以防止 Play 页面遭到破坏

    【讨论】:

    • 我会研究 JSOUP 的事情,因为这听起来很有希望。基本上,我想要的是呈现页眉和页脚的 HTML,这样我就可以在 Play 页面上使用它们,让我可以将这些片段保存在一个地方,Drupal。如果我理解您的建议,您的第二个选项听起来也可能有效。我的研究将我引向了几个页面模板,一个只返回页眉 html sn-p,另一个只返回页脚 html sn-p。
    • 是的,如果您可以准备仅页眉和仅页脚模板并在单独的 URL 上显示它们,那么使用 WS API 获取最容易 - 无需进一步解析
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-11
    • 2011-09-01
    • 2013-09-14
    • 2022-12-06
    • 2017-09-20
    • 2013-06-20
    相关资源
    最近更新 更多