Drupal核心中的JSON:API:迎接以API优先为核心的Drupal未来!- InternetDevels

作者:API传播员 · 2025-11-02 · 阅读时间:4分钟

Dries Buytaert,Drupal创始人

最新发布的Drupal 8.7.0版本中,JSON:API正式被纳入核心模块!这对于支持API优先理念的Drupal用户来说无疑是一个令人振奋的消息。JSON:API现已成为Drupal 8网络服务的重要组成部分,专注于与第三方应用进行高效的数据交换。本文将详细解析JSON:API的工作原理、它加入Drupal核心的历程,以及这一里程碑式的事件对Drupal生态系统的意义。


API优先的Drupal新时代

随着技术的快速发展,企业的需求早已超越了传统的网站建设。他们正在通过“一次创建,随处发布”(COPE)的方法,探索多渠道内容分发的可能性。借助API,内容可以轻松分发至移动应用、物联网设备等多种平台。

在Drupal 8核心RESTful网络服务的基础上,API优先的Drupal生态系统逐渐形成,包括:

  • GraphQL、Simple OAuth、Open API、Consumers、RELAXed Web Services、Subrequests等贡献模块;
  • 解耦发行版如Contenta CMS、Reservoir和Headless Lightning;
  • Waterwheel.js SDK。

当然,最值得一提的便是JSON:API贡献模块,它已经成功进入Drupal核心模块,标志着API优先战略的进一步深化。


JSON:API进入Drupal核心的历程

JSON:API规范在JavaScript社区中日益受到欢迎。早在2017年,Drupal创始人Dries Buytaert便建议将JSON:API贡献模块纳入Drupal核心。他认为,这一模块的功能完全符合核心模块的标准,但要实现这一目标仍需付出大量努力。

在JSON:API被提交至Drupal 8.7分支时,已经完成了以下关键工作:

破纪录的模块:核心中直接稳定!

通常情况下,Drupal的贡献模块会以实验性状态加入核心,经过测试和改进后才会转为稳定版本。然而,JSON:API模块却打破了这一惯例,成为首个从第一天起就以稳定状态加入Drupal核心的模块!该模块的主要创建者Mateu Aguiló Bosch对此表示了极大的自豪。


JSON:API模块的工作原理

启用JSON:API模块后,Drupal核心会通过Web服务API立即提供Drupal实体(如博客文章、用户、评论等)的访问能力。在JSON:API的视角下,这些实体被视为资源对象。模块会为每个实体类型生成URL,并通过HTTP方法实现访问。

正如Dries所描述的,开发者和内容编辑者可以直接在Drupal用户界面中创建内容模型。除了直观的内容创作体验外,他们还可以获得强大且符合标准的Web服务API,将内容分发至JavaScript应用、数字亭、聊天机器人、语音助手等多种平台。

JSON:API模块的主要功能包括:

  • 获取选定实体字段(如博客标题);
  • 包含关联关系(如博客作者),避免额外的请求;
  • 筛选资源集合;
  • 对资源集合进行排序;
  • 对资源集合进行分页。

这些功能极大地提升了开发效率和内容分发的灵活性。


JSON:API贡献模块用户需要注意的事项

对于在Drupal 8.5或8.6版本中使用JSON:API 8.x-2.x贡献模块的用户,只需升级至Drupal 8.7并删除贡献模块即可。其功能在升级后将保持不变。然而,请注意,JSON:API贡献模块将在2019年底停止支持,因此尽早升级至核心版本是明智之举。


升级至Drupal 8.7,体验核心中的JSON:API

JSON:API被纳入Drupal核心模块,标志着Drupal在API优先战略上的又一次飞跃。通过这一模块,开发者和企业可以更加高效地实现多渠道内容分发,拥抱数字化未来。如果您尚未升级至Drupal 8.7,现在正是最佳时机,赶快体验核心中的JSON:API带来的强大功能吧!


原文链接: https://internetdevels.com/blog/json-api-in-drupal-core