contentacms/contenta_jsonapi

此包已废弃且不再维护。未建议替代包。

安装数: 132,026

依赖者: 2

建议者: 0

安全: 0

星标: 327

关注者: 29

分支: 105

开放问题: 0

类型:drupal-profile

v3.0.680 2019-05-10 15:26 UTC

README

已弃用。Contenta CMS是一个用于展示解耦项目最佳实践的教程性发行版。解耦Drupal已经稳定很长时间,该项目的重要性逐年下降。此外,由于没有人站出来填补维护者角色,我决定存档此项目。感谢多年来所有参与该项目的人。

寻求帮助以维护Contenta。我已经有一段时间没有找到更新和改进Contenta CMS的动力了。我不认为这种情况会在近期改变。如果您愿意成为该项目的新维护者,请与我联系。

Contenta是一个基于Drupal 8的内容API和CMS。它提供了一个标准、基于jsonapi的平台,用于构建解耦的应用程序和网站。

安装

按照文档说明安装Contenta CMS。

CURL

一旦您的网站在本地运行,您可能想要使用Curl来检查预安装的内容

curl --header 'Accept: application/vnd.api+json' http://127.0.0.1:8888/api/recipes

结果将是一个食谱列表。注意

  • Drupal的jsonapi实现使用实体uuid来标识单个内容资源。在上述URL后追加/{{uuid}}以获取单个食谱。
  • Contenta使用JSON API Extras模块来自定义资源URL:例如,使用/api/recipes而不是/jsonapi/node/recipes。Contenta还配置JSON API Extras来自定义请求的输出,以消除不必要的字段。

CORS

当您实际构建前端时,您可能会遇到CORS(跨源资源共享)问题。

为了允许浏览器请求Contenta后端,您需要

  • 将/sites/default/default.services.yml复制到/sites/default/services.yml
  • 允许您的应用程序访问它,通过替换此配置文件的末尾。
  cors.config:
    enabled: true
    allowedHeaders:
      - '*'
    allowedMethods:
      - '*'
    allowedOrigins:
       # Note: you need to specify the host + port where your app will run.
      - localhost:8000
    exposedHeaders: false
    maxAge: false
    supportsCredentials: false
  • 运行drush:cd <DESTINATION>/web && ../vendor/bin/drush cr

开发

加入#contenta Slack频道的讨论。

有关contenta_jsonapi本身的开发文档,请参阅docs/development

行为准则

开发安装

  • 如果您想设置一个允许您向Contenta贡献的设置,请按照上面的安装说明操作
  • 将/web/profiles/contrib/contenta_jsonapi目录替换为此仓库的检出
cd -DESTINATION-
rm -rf web/profiles/contrib/contenta_jsonapi
git clone git@github.com:contentacms/contenta_jsonapi.git web/profiles/contrib/contenta_jsonapi

测试

Nightwatch

Nightwatch提供自动化浏览器测试,位于tests/nightwatch目录中。要安装和本地运行,您需要Yarn和Chrome。

yarn install
yarn run nightwatch

前端

有一系列示例消费者,请参阅http://www.contentacms.org/#example-consumers以获取它们的列表。

更新

Contenta CMS是一个Fork & Go解决方案。没有支持的升级路径。您可以像平时一样更新您的Drupal。

请参阅文档化问题

致谢

这项工作基于几个贡献模块。

除此之外,还使用了thunder发行版作为此安装配置文件的基础。

Contenta CMS是由人类构建的。