CAP for Node

외부 API 연결? cds.connect.to 한 줄 #shorts #SAP #CAP

외부 API 연결? cds.connect.to 한 줄 #shorts #SAP #CAP

Moderator · 2026. 5. 5. · 조회 1

CAP에서 외부 서비스를 쓰는 방법

CAP(Cloud Application Programming Model) 애플리케이션에서 외부 REST API나 OData 서비스를 호출해야 할 때가 있습니다. 직접 HTTP 클라이언트를 설정하는 대신, CAP의 cds.connect.to()를 사용하면 단 한 줄로 외부 서비스에 연결할 수 있습니다.

cds.connect.to() 기본 사용법

서비스 이름을 지정하면 CAP이 package.jsoncds.requires 설정을 읽어 자동으로 연결합니다.

const srv = await cds.connect.to('ExternalService');
const result = await srv.run(SELECT.from('EntityName'));

단 두 줄로 외부 서비스를 조회할 수 있습니다.

package.json 설정

연결 대상을 cds.requires에 정의합니다. SAP BTP의 Destination 서비스를 활용하면 인증 정보도 자동 처리됩니다.

"cds": {
  "requires": {
    "ExternalService": {
      "kind": "odata-v4",
      "credentials": {
        "destination": "MY_DESTINATION"
      }
    }
  }
}

BTP Destination 연동의 장점

  • 인증 정보(OAuth, Basic Auth)를 코드에서 분리 관리
  • 환경별(dev/prod) URL 전환이 설정 변경만으로 가능
  • SAP Connectivity Service와 자동 연동

실전 패턴 — 프록시로 외부 호출 위임

자체 CDS 서비스에서 외부 서비스를 프록시처럼 감싸는 패턴이 많이 사용됩니다.

module.exports = class MyService extends cds.ApplicationService {
  async init() {
    const ext = await cds.connect.to('ExternalService');
    this.on('READ', 'Orders', req => ext.run(req.query));
    return super.init();
  }
};

핵심 한 줄

cds.connect.to()로 외부 서비스도 CDS 쿼리로 호출한다.


본 게시글은 btpstacks.com의 독립 학습 콘텐츠이며 SAP SE와 무관합니다. 공식 문서는 help.sap.com을 참고하세요.

SAP, ABAP, SAP BTP, SAPUI5, SAP Fiori는 독일 및 기타 국가에서 SAP SE의 상표 또는 등록상표입니다.

댓글 0

아직 댓글이 없습니다.