이 AEM Headless 개발자 여정의 부분에서는 REST API를 통해 콘텐츠 조각의 콘텐츠에 액세스하고 업데이트하는 방법을 대해 알아봅니다.
AEM Headless 번역 여정의 이전 문서인 AEM Delivery API를 통해 콘텐츠를 액세스하는 방법에서 AEM GraphQL API를 통해 AEM의 Headless 콘텐츠에 액세스하는 방법에 대해 알아보았습니다. 여기에서 알게 된 내용은 다음과 같습니다.
이 문서는 해당 기본 사항을 기본으로 하며, 이를 통해 REST API를 사용하여 AEM의 기존 Headless 콘텐츠를 업데이트하는 방법에 대해 살펴볼 수 있습니다.
Headless 여정의 이전 단계에서는 쿼리를 사용하여 콘텐츠를 검색하는 AEM GraphQL API 사용에 대해 알아보았습니다.
그러면 다른 API가 필요한 이유는 무엇입니까?
Assets HTTP API를 사용하여 콘텐츠를 읽을 수 있지만 GraphQL API를 사용할 수 없는 액션인 콘텐츠를 만들고, 업데이트하고, 삭제할 수도 있습니다.
Assets REST API는 기본적으로 제공되는 최신 Adobe Experience Manager 버전 설치에서 사용할 수 있습니다.
Assets HTTP API에는 다음이 포함됩니다.
Assets HTTP API의 현재 구현은 REST 아키텍처 스타일을 기반으로 하며 CRUD 작업(만들기, 읽기, 업데이트, 삭제)을 통해 콘텐츠(AEM에 저장됨)에 액세스할 수 있습니다.
이러한 작업을 통해 API는 JavaScript 프런트 엔드 애플리케이션에 컨텐츠 서비스를 제공하여 Adobe Experience Manager as a Headless CMS(컨텐츠 관리 시스템)를 운영할 수 있도록 합니다. 아니면 HTTP 요청을 실행하고 JSON 응답을 처리할 수 있는 다른 애플리케이션입니다. 예를 들어 단일 페이지 애플리케이션(SPA), 프레임워크 기반 또는 사용자 지정에는 API를 통해 종종 JSON 형식으로 제공되는 콘텐츠가 필요합니다.
콘텐츠 조각은 Headless 게재에 사용되고 콘텐츠 조각은 특수 유형의 에셋입니다. 텍스트, 숫자, 날짜 등과 같은 구조화된 데이터에 액세스하는 데 사용됩니다.
Assets REST API는 /api/assets
엔드포인트를 사용하여 액세스하려면 에셋 경로가 필요합니다(선행 /content/dam
없이).
/content/dam/path/to/asset
/api/assets/path/to/asset
예를 들어 /content/dam/wknd/en/adventures/cycling-tuscany
에 액세스하기 위해 /api/assets/wknd/en/adventures/cycling-tuscany.json
을 요청합니다.
다음을 통한 액세스:
/api/assets
는 .model
선택기 사용이 필요하지 않습니다./content/path/to/page
는 .model
선택기 사용이 필요합니다.HTTP 메서드는 실행할 작업을 결정합니다.
요청 본문 및/또는 URL 매개변수를 사용하여 해당 작업 중 일부를 구성할 수 있습니다(예: POST 요청에 의해 폴더 또는 에셋이 생성될 수 있도록 정의).
API 참조 설명서에 지원되는 요청의 정확한 형식을 정의합니다.
사용량은 특정 사용 사례와 함께 AEM 작성자 또는 게시 환경 사용 여부에 따라 다를 수 있습니다.
작성자 인스턴스에 생성을 바인딩하는 것이 좋습니다(그리고 현재 이 API를 통해 게시할 조각을 복제할 수 없음).
AEM은 JSON 형식으로만 요청된 콘텐츠를 제공하므로 모두에서 게재할 수 있습니다.
AEM 작성자 인스턴스 저장 및 게재는 방화벽 뒤 미디어 라이브러리 애플리케이션에 충분할 수 있습니다.
라이브 웹 게재의 경우 AEM 게시 인스턴스가 권장됩니다.
AEM 인스턴스의 Dispatcher 구성이 다음에 대한 액세스를 차단할 수 있습니다. /api
.
자세한 내용은 API 참조를 참조하십시오. 특히, Adobe Experience Manager Assets API - 콘텐츠 조각.
사용은 다음을 통해서입니다.
GET /{cfParentPath}/{cfName}.json
예:
http://<host>/api/assets/wknd/en/adventures/cycling-tuscany.json
응답은 콘텐츠 조각에서와 같이 구조화된 콘텐츠가 있는 직렬화된 JSON입니다. 참조 URL로 참조를 게재합니다.
다음과 같이 두 가지 유형의 읽기 작업이 가능합니다.
사용은 다음을 통해서입니다.
POST /{cfParentPath}/{cfName}
본문에는 콘텐츠 조각 요소에 설정해야 하는 초기 콘텐츠를 비롯해 생성할 콘텐츠 조각의 JSON 표현식이 포함되어야 합니다. cq:model
속성 설정이 필수이며 유효한 콘텐츠 조각 모델을 지정해야 합니다. 지정하지 못하면 오류가 발생합니다. 또한 application/json
으로 설정된 헤더 Content-Type
을 추가해야 합니다.
사용은 다음을 통해서입니다.
PUT /{cfParentPath}/{cfName}
본문에는 특정 콘텐츠 조각에 업데이트할 항목의 JSON 표현식이 포함되어야 합니다.
이는 간단히 콘텐츠 조각의 제목이나 설명 또는 단일 요소나 모든 요소 값 및/또는 메타데이터일 수 있습니다.
사용은 다음을 통해서입니다.
DELETE /{cfParentPath}/{cfName}
AEM Assets REST API 사용에 대한 자세한 내용은 다음을 참조할 수 있습니다.
AEM Headless 개발자 여정의 한 부분을 완료했으므로,
다음 문서에서는 AEM Headless 여정을 계속 진행해야 합니다 Headless 애플리케이션 실행 방법 여기에서 AEM Headless 프로젝트를 실제로 라이브로 볼 수 있습니다!