クラス: Mongo::URI::SRVProtocol

継承:
URI
  • オブジェクト
すべて表示
定義:
lib/mongo/uri/srv_protocol.rb

Overview

mongodb+srvプロトコルを使用して URI をパーサーし、SRV レコードをクエリする DNS を指定します。ドライバーは、_mongodb._tcp というプレフィックスが付いた 上の SRV レコードを DNSサーバーにクエリします。SRV レコードは、 Mongo ::クライアント のシードリストとして使用できます。ドライバーは、デフォルトの接続文字列オプションを提供する TXTレコードもクエリします。許可される TXTレコードは 1 つだけで、 Mongo::クライアント オプションのサブセットのみが許可されます。

詳細については、「 最初の DNS シードリスト検出 」を参照してください。

https://github.com/mongodb/specions/lob/ Master/source/initial-dns-Seedlist-discovery/initial-dns-Seedlist-discovery.md

例:

URI string を使用してクライアント接続を行います。

client = Mongo::Client.new('mongodb+srv://test6.test.build.10gen.cc/')

以来

  • 2.5.0

インスタンス属性の概要を折りたたむ

インスタンス メソッドの概要を折りたたむ

インスタンス属性の詳細

# query_hostname = string (読み取り専用)

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

URI で指定され、SRV レコードを検索するために使用されるホスト名。

SRVProtocol は サーバーを URI で指定されたホスト名ではなく lookup の結果に変更するため、この属性を定義する必要があります。

次の値を返します。

  • ( string )

    SRV lookup で使用されるホスト名。

以来

  • 2.5.0



68
69
70
# ファイル 'lib/mongo/uri/srv_protocol.rb' 行 68

デフォルト query_hostname
  @query_hostname
end

# srv_records =オブジェクト(読み取り専用)

以来

  • 2.5.0



35
36
37
# ファイル 'lib/mongo/uri/srv_protocol.rb' 行 35

デフォルト srv_records
  @srv_records
end

# srv_result = Srv::Result (読み取り専用)

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

SRV lookup の結果を返します。

次の値を返します。

以来

  • 2.5.0



56
57
58
# ファイル 'lib/mongo/uri/srv_protocol.rb' 行 56

デフォルト srv_result
  @srv_result
end

インスタンス メソッドの詳細

# client_options =ハッシュ

インスタンス化時にMongo ::クライアント に渡す必要があるオプション ハッシュを取得します。そのため、その点で txtレコードオプション、認証情報、データベースをマージする必要はありません。ここには1つの点しかありません。

例:

クライアント オプションを取得します。

uri.client_options

次の値を返します。

  • ハッシュ

    Mongo::Client に渡されるオプション

以来

  • 2.5.0



47
48
49
50
51
# ファイル 'lib/mongo/uri/srv_protocol.rb' 行 47

デフォルト client_options
  ops = @txt_options.merge(ssl: true)
  ops = ops.merge(uri_options).merge(database: database)
  @user ? ops.merge(Credentials) : ops
end