跨源资源共享 (CORS) 配置
CAUTION
如果已在 Dispatcher 中启用缓存,则不需要 CORS 筛选条件,因此可忽略此部分。
NOTE
有关 AEM 中 CORS 资源共享策略的详细概述,请参阅了解跨源资源共享 (CORS)。
要访问 GraphQL 端点,必须配置 CORS 策略并添加到通过 Cloud Manager 部署到 AEM 的 AEM 项目。此操作可通过为所需端点添加相应的 OSGi CORS 配置文件来完成。可以创建多个 CORS 配置并部署到不同环境。在 WKND 参考网站中可找到示例。
CORS 配置必须指定可信网站源 alloworigin
或 alloworiginregexp
,必须向其授予访问权限。
配置文件的命名必须类似于:com.adobe.granite.cors.impl.CORSPolicyImpl~appname-graphql.cfg.json
,其中 appname
体现了您应用程序的名称。
例如,要授予对 GraphQL 端点 /content/cq:graphql/wknd/endpoint
的访问权限,以及对 https://my.domain
的持久查询端点的访问权限,您可以使用:
{
"supportscredentials":false,
"supportedmethods":[
"GET",
"HEAD",
"POST"
],
"exposedheaders":[
""
],
"alloworigin":[
"https://my.domain"
],
"maxage:Integer":1800,
"alloworiginregexp":[
""
],
"supportedheaders":[
"Origin",
"Accept",
"X-Requested-With",
"Content-Type",
"Access-Control-Request-Method",
"Access-Control-Request-Headers"
],
"allowedpaths":[
"/content/cq:graphql/wknd/endpoint.json",
"/graphql/execute.json/.*"
]
}
如果您已为端点配置虚名路径,还可以在 allowedpaths
中使用它。
recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab