sgcOpenAPI
Delphi와 C++ Builder를 위한 하나의 번들 제품: OpenAPI 3.x 파서, 네이티브 Pascal SDK 생성기, OpenAPI 서버 컴포넌트, 그리고 1,195개 이상의 미리 빌드된 클라우드 SDK — 모두 하나의 Single / Team / Site 라이선스에 포함돼요.
Delphi와 C++ Builder를 위한 하나의 번들 제품: OpenAPI 3.x 파서, 네이티브 Pascal SDK 생성기, OpenAPI 서버 컴포넌트, 그리고 1,195개 이상의 미리 빌드된 클라우드 SDK — 모두 하나의 Single / Team / Site 라이선스에 포함돼요.
완전한 타입 안전성과 IntelliSense 지원으로 모든 OpenAPI 사양을 프로덕션 수준의 Pascal 코드로 바꿔요.
OpenAPI 또는 Swagger 사양을 가져오면 sgcOpenAPI가 프로젝트에 바로 사용할 수 있는 깔끔하고 관용적인 Object Pascal 인터페이스를 생성해요.
주요 클라우드 공급자를 위한 즉시 사용 가능한 Pascal SDK로 바로 시작해 보세요. 모든 SDK는 최신 API 사양에 맞춰 정기적으로 업데이트돼요.
번들된 OpenAPI 서버 컴포넌트를 사용하면 Delphi 또는 C++ Builder 백엔드가 자체 엔드포인트를 유효한 OpenAPI 3.x 문서로 게시하고, 하나의 컴포넌트로 서비스할 수 있어요 — 파서가 사용하는 것과 동일한 모델이고, sgcWebSockets HTTP 서버와 통합돼요.
openapi.json / openapi.yaml 게시
API 사양에서 완전히 통합된 Pascal 코드까지, 세 가지 간단한 단계로 진행해요.
OpenAPI 3.x 사양 파일을 JSON 또는 YAML 형식으로 로드하세요. Swagger 1.x와 2.x 사양은 자동으로 감지되어 OpenAPI 3.x 스키마로 변환돼요.
파서는 엔드포인트, 매개변수, 요청/응답 모델, 인증 스키마를 분석한 다음, 적절한 타입 매핑이 적용된 깔끔하고 관용적인 Pascal 코드를 생성해요.
생성된 유닛을 Delphi 프로젝트에 그대로 넣으세요. 완전한 타입 안전성, IntelliSense 지원, 외부 의존성이 전혀 없어요. 바로 API 호출을 시작할 수 있어요.
Delphi와 Pascal 툴체인의 모든 주요 버전과 함께 동작해요.
Delphi 7부터 RAD Studio 13까지 완전히 지원해요. VCL과 FireMonkey 프레임워크에서 디자인 타임 컴포넌트 등록이 가능해요.
래퍼 헤더를 갖춘 네이티브 C++ Builder 지원이에요. C++ Builder 2007부터 C++ Builder 13까지 호환돼요.
생성된 Pascal SDK가 실제로 어떤 모습인지 확인해 보세요 — 깔끔하고, 타입 안전하며, 바로 사용할 수 있어요.
uses sgcOpenAPI_PetStore; // Generated from petstore.yaml procedure TForm1.btnGetPetClick(Sender: TObject); var Client: TsgcOpenAPI_PetStoreClient; Pet: TsgcOpenAPI_Pet; begin Client := TsgcOpenAPI_PetStoreClient.Create(nil); try Client.BaseURL := 'https://petstore.swagger.io/v2'; Client.ApiKey := 'your-api-key'; // Type-safe API call with IntelliSense Pet := Client.GetPetById(42); try Memo1.Lines.Add('Name: ' + Pet.Name); Memo1.Lines.Add('Status: ' + Pet.Status); Memo1.Lines.Add('Category: ' + Pet.Category.Name); finally Pet.Free; end; finally Client.Free; end; end; procedure TForm1.btnListPetsClick(Sender: TObject); var Client: TsgcOpenAPI_PetStoreClient; Pets: TsgcOpenAPI_PetList; i: Integer; begin Client := TsgcOpenAPI_PetStoreClient.Create(nil); try Client.BaseURL := 'https://petstore.swagger.io/v2'; // Strongly-typed list of Pet objects Pets := Client.FindPetsByStatus('available'); try for i := 0 to Pets.Count - 1 do ListBox1.Items.Add(Pets[i].Name); finally Pets.Free; end; finally Client.Free; end; end;