Delphi Google Cloud SDK — FCM, Pub/Sub, Calendar & 그 외
Google Cloud 플랫폼용 응집력 있는 Pascal 컴포넌트 세트: Firebase Cloud Messaging HTTP v1으로 모바일 알림 푸시, Cloud Pub/Sub에서 메시지 풀 / 게시, Google Calendar에서 이벤트 예약, 모든 GCP 서비스에 대한 서비스 계정 JWT 서명, 디스커버리 / OpenAPI 문서에서 모든 Google API에 대한 강력하게 타입이 지정된 클라이언트 생성 — 모두 sgcWebSockets에서.
Python google-cloud 바인딩, Java JDK, Node.js 브리지 없음 — Google의 엔드포인트에 직접 HTTPS, HTTP/2 및 OAuth2를 사용하는 Delphi 컴포넌트일 뿐이에요.
Google Cloud Platform은 수백 개의 REST API — 메시징, 스토리지, 큐잉, 신원, 매핑, 머신러닝, 생산성(Calendar, Drive, Gmail, Docs), 광고, 분석, 청구 등 — 를 노출해요. 지금까지 Delphi에서 호출하려면 JWT 서명자, OAuth2 토큰 새로 고침 도구, 멀티파트 업로더 및 SSE 파서를 수동으로 작성해야 했어요. sgcWebSockets는 가장 일반적인 표면을 위한 일류 컴포넌트를 제공해요 — Firebase Cloud Messaging HTTP v1용 TsgcHTTP_API_GoogleFCM, Cloud Pub/Sub용 TsgcHTTP_API_GoogleCloudPubSub, Calendar API v3용 TsgcHTTP_API_GoogleCalendar — 그리고 다른 모든 Google 엔드포인트를 구동하는 재사용 가능한 OAuth2 + 서비스 계정 JWT 인프라와 긴 꼬리를 위한 sgcOpenAPI 코드 생성기.
인증은 균일해요: Google Cloud 프로젝트, 서비스 계정 JSON 키(또는 최종 사용자 흐름용 OAuth2 클라이언트) 및 적절한 https://www.googleapis.com/auth/... 범위. 라이브러리의 JWT 서명자는 어설션을 빌드하고, oauth2.googleapis.com/token에서 액세스 토큰을 요청하고, 투명하게 캐시 / 새로 고침해요. 동일한 코드가 VCL 및 FMX UI 계층 모두에서 Windows, macOS, Linux, iOS 및 Android에서 수정 없이 실행돼요.
sgcOpenAPI는 OpenAPI 문서를 게시하는 모든 Google REST API에 대해 Pascal 클라이언트 클래스를 내보내요 — Compute Engine, BigQuery, Cloud Functions, Cloud Run, Secret Manager 및 친구들.
인증
OAuth2 + 서비스 계정 JWT, 서버 측
대부분의 Google Cloud API는 두 가지 형태의 자격 증명을 수락해요: 서비스 계정 JSON 키(oauth2.googleapis.com/token에서 단기 베어러 토큰으로 교환되는 RS256 서명 JWT, 사용자 상호 작용 없음)와 최종 사용자 데이터(Calendar, Drive, Gmail)용 표준 권한 부여 코드 또는 장치 코드 흐름이 있는 OAuth2 클라이언트. sgcWebSockets는 두 가지를 모두 다뤄요: TsgcJWTClient는 어설션에 서명하고, TsgcOAuth2Client는 사용자 흐름을 구동하며, 서비스별 컴포넌트는 연결한 자격 증명을 사용해요. 토큰은 메모리에 캐시되고 만료 전에 새로 고쳐지므로 애플리케이션 코드는 401에 절대 닿지 않아요.
Cloud Pub/Sub은 Google의 글로벌 분산, 적어도 한 번 메시징 패브릭이에요 — 수많은 이벤트 기반 아키텍처의 백본. 동일한 서비스 계정 자격 증명이 양쪽 끝을 구동해요; 발행자는 토픽에 메시지를 POST하고, 구독자는 일정에 따라 풀하거나 HTTPS 엔드포인트에서 푸시 전달을 수락해요.
sgcWebSockets를 Delphi 또는 C++Builder IDE에 드롭하세요 — Delphi 버전 7부터 13까지 버전당 하나의 패키지. 체험판 다운로드.
2. 서비스 계정 생성
Google Cloud 콘솔에서 서비스 계정을 생성하고, 올바른 역할(예: Pub/Sub Publisher, Firebase Messaging Admin)을 부여하고, JSON 키를 다운로드하세요.
3. 컴포넌트 드롭
FCM의 경우 TsgcHTTP_API_GoogleFCM을 사용하고, Pub/Sub의 경우 TsgcHTTP_API_GoogleCloudPubSub을 사용하고, Calendar의 경우 TsgcHTTP_API_GoogleCalendar를 사용하세요 — 또는 sgcOpenAPI로 사용자 정의 SDK를 생성하세요.