𝗖𝗼𝗹𝗱𝗙𝘂𝗹𝘀𝗶𝗼𝗻 𝗚𝗥𝗔𝗣𝗛𝗤𝗟 𝘃𝘀 𝗥𝗘𝗦𝗧

ColdFusion 개발자들은 API를 구축할 때 독특한 선택의 기로에 놓입니다. 대부분의 가이드는 GraphQL과 REST를 일반적인 관점에서 비교하지만, ColdFusion이 이 둘을 어떻게 다르게 처리하는지는 간과하곤 합니다.

REST는 ColdFusion에서 네이티브로 지원됩니다. cfcomponent rest="true"를 사용하여 REST API를 쉽게 구축할 수 있으며, cfhttp를 사용하여 이를 호출할 수 있습니다. 별도의 도구 없이 양쪽 모두에서 잘 작동합니다.

GraphQL은 ColdFusion에서 다르게 작동합니다. 비대칭적(asymmetric)입니다.

ColdFusion 2023에서는 네이티브 GraphQL 클라이언트가 도입되었습니다. getGraphQLClient()를 사용하여 GitHub 또는 Shopify와 같은 외부 서비스와 통신할 수 있습니다. 이는 데이터를 가져오는 용도로 매우 유용합니다.

하지만 ColdFusion은 GraphQL을 네이티브로 제공(serve)하지는 않습니다. 아직 자신의 데이터를 GraphQL 엔드포인트로 쉽게 노출할 수는 없습니다. Adobe는 나중에 이 기능을 추가할 계획입니다.

오늘날 ColdFusion에서 GraphQL 서버를 구축하려면 직접 작업을 수행해야 합니다. 다음이 필요합니다:

  • Resolver CFCs
  • graphql-java와 같은 Java 라이브러리
  • 또는 제3자(third-party) CFML 구현체

참고: 네이티브 GraphQL 클라이언트는 Adobe ColdFusion 2023 이상 버전이 필요합니다. Lucee에서는 작동하지 않습니다.

결정은 목표에 따라 달라집니다.

  • API를 빠르게 구축하고 노출하고 싶다면 REST를 사용하세요.
  • 외부 서비스에서 데이터를 가져와야 한다면 GraphQL을 사용하세요.

현재 플랫폼의 한계에 맞는 도구를 선택하십시오.

Source: https://dev.to/deepak_sir__/coldfusion-graphql-vs-rest-when-each-api-style-fits-your-architecture-2bjc

Optional learning community: https://t.me/GyaanSetuAi