피드로 돌아가기
Dev.toFrontend
원문 읽기
Power Pages Client API 기반의 Dataverse CRUD 및 Agent 연동 아키텍처 구현
Power Pages Client API: Building with $pages.webAPI and $pages.agent
AI 요약
Context
기존 Power Pages 환경에서 서버 사이드 렌더링 중심의 제한적인 상호작용 구조를 개선하여 동적인 사용자 경험을 제공하려는 요구 발생. 특히 Dataverse 레코드의 실시간 조회 및 생성, AI Agent와의 비동기 통신을 클라이언트 사이드에서 직접 처리하는 구조적 전환 필요.
Technical Solution
onPagesClientApiReady함수를 통한 API 초기화로 브라우저 환경에 따른 Callback 및 Promise/await 기반의 유연한 진입점 확보webAPI.retrieveMultipleRecords메서드에$filter및$expand쿼리 옵션을 적용하여 연관 테이블의 데이터를 한 번의 요청으로 최적화하여 호출webAPI.createRecord를 통한 클라이언트 사이드 데이터 생성 로직 구현 및 Site Settings 설정을 통한 테이블별 접근 권한 제어$pages.agent.SendActivity인터페이스를 활용하여 Agent Schema Name 기반의 비동기 메시지 전송 및 Response/Error Subscriber를 통한 상태 관리 설계- Liquid 템플릿 엔진을 통한
user.id주입으로 클라이언트 API 호출 시 사용자 컨텍스트를 유지하는 하이브리드 데이터 바인딩 적용
실천 포인트
- Dataverse API 호출 전 Webapi/<table name>/enabled 및 fields 설정 확인 - EntitySetName 사용 시 Logical Name과의 차이점 인지 및 정확한 스키마 명칭 적용 - AI Agent 연동 시 라이선스 및 게시 권한 설정의 사전 검토 - 비동기 API 호출 시 사용자 경험 유지를 위한 Loading 상태 처리 및 Error Subscriber 구현