Docs Menu

Stable API

참고

Stable API 기능을 사용하려면 MongoDB Server 5.0 이상이 필요합니다.

연결하려는 모든 MongoDB Server가 이 기능을 지원하는 경우에만 stable API 기능을 사용하세요.

이 가이드에서는 MongoDB 인스턴스 혹은 복제본 세트에 연결할 때 Stable API 호환성을 지정하는 방법을 알아봅니다.

Stable API 기능은 지정한 API 버전과 호환되는 동작으로 서버가 작업을 실행하도록 할 수 있습니다. API 버전은 다루는 작업의 예상 동작과 서버 응답 포맷을 정의합니다. 지정하는 API 버전에 따라 작업 및 서버 응답이 달라질 수 있습니다.

정식 MongoDB 드라이버와 함께 Stable API 기능을 사용하면 Stable API에서 다루는 명령의 이전 버전과의 호환성 문제를 걱정하지 않고 드라이버 또는 서버를 업데이트할 수 있습니다.

서버에서 처리하는 명령에 대해 자세히 알아보려면 stable API 를 참조하세요.

Client 는 선택적으로 ServerAPIOptions 타입을 취하는데 이는 ClientOptions를 통해서 이루어집니다.

API 버전을 지정하려면 SetServerAPIOptions() 메서드를 서버 API 옵션과 함께 ClientOptions에 추가합니다. API 버전을 지정하면 Client는 연결 기간에 API 버전과 호환되는 작업을 실행합니다.

참고

MongoDB Go 드라이버는 현재 ServerAPIVersion1만 지원합니다.

다음 예시에서는 Stable API 버전을 설정하고 서버에 연결하는 Client를 인스턴스화합니다.

// Specify a server URI to connect to
uri := "mongodb://<hostname>:<port>"
// Specify the Stable API version in the ClientOptions object
serverAPI := options.ServerAPI(options.ServerAPIVersion1)
// Pass in the URI and the ClientOptions to the Client
client, err := mongo.Connect(options.Client().ApplyURI(uri).SetServerAPIOptions(serverAPI))
if err != nil {
panic(err)
}

ServerAPIOptions 유형에 추가하여 stable API 기능의 동작을 추가로 수정할 수 있습니다. 옵션을 지정하지 않으면 드라이버는 각 옵션에 대해 기본값을 사용합니다.

메서드
설명

ServerAPI()

The API version to use.

Default: ServerAPIVersion1

SetStrict()

Flag that indicates whether the server should return errors for features that aren't part of the API version.

Default: false

SetDeprecationErrors()

Flag that indicates whether the server should return errors for deprecated features.

Default: false

이 예시에서는 서버가 다음 조치를 수행하도록 지정합니다.

  • API 버전 1을 사용합니다

  • 버전 1에 포함되지 않은 기능에 대한 오류를 반환합니다

  • 더 이상 사용되지 않는 기능에 대한 오류 반환

// Specify a server URI to connect to
uri := "mongodb://<hostname>:<port>"
// Specify the Stable API version and append options in the ClientOptions object
serverAPI := options.ServerAPI(options.ServerAPIVersion1).SetStrict(true).SetDeprecationErrors(true)
// Pass in the URI and the ClientOptions to the Client
client, err := mongo.Connect(options.Client().ApplyURI(uri).SetServerAPIOptions(serverAPI))
if err != nil {
panic(err)
}

MongoDB 인스턴스 또는 복제본 세트 에 연결하는 방법에 학습 보려면 연결 가이드를 참조하세요.

이 섹션의 옵션에 대한 자세한 내용은 다음 API 문서를 참조하세요.