Capabilities API를 사용하면 애플리케이션이 특정 API 기능의 서비스 중단 및 예정된 다운타임을 감지할 수 있습니다. 이 API를 사용하면 특정 기능을 사용할 수 없을 때 이를 감지하고 해당 기능을 우회하여 애플리케이션의 다운타임을 줄일 수 있습니다.
capability 패키지 콘텐츠를 보려면 capability 패키지 참조를 확인하세요.
예를 들어 Datastore API를 사용하는 경우 Capabilities API를 사용하면 Datastore API를 사용할 수 없을 때 이를 감지하여 사용자에게 오류를 보고할 수 있습니다.
Datastore 읽기 및 쓰기 가능 여부도 별도로 쿼리할 수 있습니다. 다음 샘플은 Datastore 쓰기 가능 여부를 감지하는 방법을 보여주고, 다운타임 중 사용자에게 메시지를 제공합니다.
Capabilities API 사용
capability.Enabled 함수는 제공된 API와 기능을 사용할 수 있는 경우에 true를 반환합니다. 기능 이름(예: "write")을 전달해야 하며 와일드 카드 "*"로 API의 모든 기능을 쿼리할 수도 있습니다.
지원되는 기능
이 API에서 현재 지원되는 기능은 다음과 같습니다.
| 기능 | Enabled에 대한 인수 |
|---|---|
| blobstore 사용 가능 여부 | "blobstore", "*" |
| Datastore 읽기 | "datastore_v3", "*" |
| Datastore 쓰기 | "datastore_v3", "write" |
| 메일 서비스 사용 가능 여부 | "mail", "*" |
| Memcache 서비스 사용 가능 여부 | "memcache", "*" |
| 태스크 큐 서비스 사용 가능 여부 | "taskqueue", "*" |
| URL Fetch 서비스 사용 가능 여부 | "urlfetch", "*" |