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/endpointhttps://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