이 섹션에서는 Bubble Data API를 사용할 때 올바른 endpoint을 식별하는 방법을 다룹니다.
(1) endpoint 의미
: 클라이언트가 API request를 보낼 때마다 특정 리소스에 접근하는 것을 떠올려보세요
- URL(Universal Resource Locator)은 이 리소스에 대한 경로를 보여줍니다.
- Bubble은 데이터 API에서 활성화한 각 데이터 type에 대해 endpoint라고 하는 URL을 자동으로 생성합니다.
- API request에서 이 URL을 사용하면 클라이언트가 올바른 데이터 type인 리소스에 도달하게 됩니다.
(2) Root URL
Bubble은 생성하는 모든 앱에 대해 고유한 URL을 구성합니다.
- 그 형태는 모든 데이터 type에 대해 동일하게 유지되는 Root URL로 시작됩니다.
- 데이터 API를 활성화하자마자 Bubble은 API 설정에 앱의 Root URL을 표시합니다.
- Data API를 활성화하면 Bubble이 애플리케이션의 루트 URL을 표시합니다.
해당 URL은 다음과 같이 구성됩니다.
1. 맞춤 도메인 없음
Version | Root URL |
개발(Main브랜치): Development (Main branch) | https://myapp.bubbleapps.io/version-test/api/1.1/obj |
개발(Custom브랜치): Development (custom branch) | https://myapp.bubbleapps.io/[branch-id]/api/1.1/obj |
라이브: Live | https://myapp.bubbleapps.io/api/1.1/obj |
2. 맞춤 도메인 있음
: 앱을 사용자 정의 도메인에 연결한 경우 URL은 다음과 같습니다.
Version | Root URL |
개발(Main브랜치):Development (Main branch) | https://mydomain.com/version-test/api/1.1/obj |
개발(Custom브랜치):Development(custom branch) | https://mydomain.com/[branch-id]/api/1.1/obj |
라이브:Live | https://mydomain.com/api/1.1/obj |
표에서와 같이 root URL은 클라이언트를 앱의 API로 가리키고 obj(객체)는 데이터베이스의 객체(데이터 레코드)와 상호 작용한다는 의미입니다.
(3) 데이터 유형 URL
퍼즐의 마지막 조각은 우리가 접속하려는 데이터 유형을 서버에 알리는 것입니다. 이를 위해서는 데이터 type의 이름을 포함해야 합니다.
1. 데이터 유형 이름
데이터 API의 데이터 type 이름은 다음 방식으로 형식을 지정해야 한다는 점을 제외하면 버블 데이터베이스 편집기에서 이름을 지정한 것과 동일합니다.
- 공백 제거
- 소문자를 사용
예를 들어, 데이터 type 이름은 다음과 같은 형식으로 지정되어야 합니다.
Data Type 이름 | 올바른 Data Type 이름 |
Orange Box | orangebox |
School Group | schoolgroup |
Mango juice | mangojuice |
항상 고유한 데이터 type 이름을 사용해야 합니다 .
두 개 이상의 데이터 type이 동일한 이름을 공유하는 경우 데이터 API는 찾은 첫 번째 type을 반환하므로 예기치 않은 동작이 발생할 수 있습니다.
2. 맞춤 도메인 없음
Orange Box 데이터 type에 접근하려는 경우 전체 endpoint URL은 다음과 같습니다.
Version | URL |
개발(Main브랜치):Development (Main branch) | https://myapp.bubbleapps.io/version-test/api/1.1/obj/orangebox |
개발(Custom브랜치): Development (Custom branch) | https://myapp.bubbleapps.io/Branch-id/api/1.1/obj/orangebox |
라이브:Live | https://myapp.bubbleapps.io/api/1.1/obj/orangebox |
3. 맞춤 도메인 있음
Version | URL |
개발(Main브랜치):Development (Main branch) | https://myapp.bubbleapps.io/version-test/api/1.1/obj/orangebox |
개발(Custom브랜치): Development (Custom branch) | https://myapp.bubbleapps.io/ Branch-id /api/1.1/obj/orangebox |
라이브:Live | https://myapp.bubbleapps.io/api/1.1/obj/orangebox |
(4) HTTP Method
엔드포인트를 완성하려면 접근하려는 리소스에 대한 URL과 해당 데이터 type으로 수행할 작업을 결정하는 HTTP 메서드 (GET, PUT, POST, DELETE)를 알아야 합니다.
HTTP Method | 설명 |
GET | 데이터 검색 |
POST | 데이터 생성 |
PUT | 데이터 업데이트 |
PATCH | 데이터 교체 |
DELETE | 데이터 삭제 |
- 위의 표는 API Call에 사용되는 가장 일반적인 HTTP 메서드를 보여줍니다. 보다 기술적인 관점에서 HTTP 메서드가 무엇인지 자세히 알아보려면 RESTful API 작동 방식과 구체적인 HTTP 메서드에 대한 가이드를 확인하세요