通过 OpenAPI 进行 AEM 内容片段传递 aem-content-fragment-delivery-with-openapi

在Adobe Experience Manager (AEM) as a Cloud Service中,用于内容片段投放的AEM OpenAPI:

  • 是一个OpenAPI,它针对JSON格式的AEM内容片段的实时投放进行了优化
  • 侧重于内容交付(性能、可扩展性、CDN集成、优化的JSON控制和输出)
  • 包括为引用的片段和资产水合JSON的功能

此API:

有关完整文档,请参阅使用OpenAPI的AEM内容片段交付。

NOTE
有关可用的各种API的概述以及所涉及概念的比较,请参阅结构化内容交付和管理的AEM API。
IMPORTANT
要在AEM as a Cloud Service上使用OpenAPI启用内容片段投放,请确保尚未启用,然后提交标题为​ 使用OpenAPI启用内容片段投放 ​的Adobe支持票证,并指定:
  • Cloud Service项目和环境ID
  • 您希望通过内容片段投放OpenAPI解决的用例的详细信息
  • Adobe应响应并随时了解请求和项目(如果需要)的所有联系人的详细信息

缓存 caching

AEM与AEM CDN Fastly集成。 这意味着在发布层上提供的JSON响应将缓存在Fastly级别。

然后,根据预定义的缓存标头缓存响应(无法配置):

  • 响应在浏览器/客户端缓存中缓存5分钟
    • max-age=300
  • 响应在CDN缓存中缓存1小时
    • s-maxage=3600
  • 在重新验证新请求时,可为过时内容提供长达1小时的服务
    • stale-while-revalidate=3600
  • 过时内容可错误提供长达1天
    • stale-on-error=86400

可用性 availability

使用OpenAPI的内容片段投放在预览层和发布层上可用。 OpenAPI以JSON格式提供内容片段,用于预览和实时交付。

要预览使用OpenAPI的内容片段投放,可以:

  • 发布到预览
  • 启用访问以通过IP允许列表预览
  • 获取预览URL

CORS cors

CORS允许的源定义可以调用API的源。

此API不考虑在Dispatcher配置端定义、专门用于GraphQL的CORS允许的源。

API速率限制 api-rate-limits

API允许新请求的速率为每环境每秒最多200个请求。

一旦超过此限制,API将开始发送429错误响应。 这些错误必须由任何客户端应用程序处理,并且失败的请求在指数回退重试后重试。 HTTP响应带有特定的标头Retry-After,该标头会向客户端指示再次发送请求之前需要等待的时间。

经过身份验证的请求 authenticated-requests

可以使用AEM CDN Edge密钥实现身份验证请求的支持。 通过使用AEM CDN Edge密钥,您可以依赖AEM CDN,并根据提供的Edge密钥标头,确保只有特定请求才能访问API。

NOTE
当前不支持基于特定于存储库的ACL进行授权。

交付复合物料 deliver-a-composite-item

您可以使用以下API交付复合项目:

  • 从管理OpenAPI (内容片段管理API)

  • 用于内容片段的 AEM GraphQL API

  • REST投放API。 有两种路径:

    • 在发布时预烘焙
    • AEM中的进程内投放
  • 对于包含水合引用的片段的OpenAPI响应,复合可减少引用和片段元数据开销。 有效负载大小取决于内容结构和引用包含选项。 嵌入复合内容与参考深度无关,因此浅层响应可以大于等效的参考响应。

NOTE
如果未发布复合字段内使用的模型,则投放API将跳过该复合内容(服务器上存在警告日志)。 这类似于缺少已发布模型的片段的现有行为。
确保客户发布管道包括组合引用的所有模型。
recommendation-more-help
experience-manager-cloud-service-help-main-toc