クラス: Mongo::URI

継承:
オブジェクト
  • オブジェクト
すべて表示
次のことが含まれます。
アドレス::Validatorログ可能
定義:
build/ruby-Driver-v 2.19 /lib/mongo/uri.rb ,
build/ruby-Driver-v 2.19 /lib/mongo/uri/srv_protocol.rb,
build/ruby-Driver-v 2.19 /lib/mongo/uri/options_mapper.rb

Overview

URI クラスは、ユーザーがMongoDB 接続string 形式の仕様 で定義されている URI を解析する方法を提供します。

www.mongodb.com/ja-jp/docs/manual/reference/ connection-string /

例:

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

uri = Mongo::URI.new('mongodb://localhost:27017')
client = Mongo::Client.new(uri.servers, uri.options)
client.(uri.credentials)
client[uri.database]

以来

  • 2.0.0

既知のサブクラスを直接確認

SRVProtocol

名前空間で定義済み

クラス: OptionsMapperSRVProtocol

定数の概要の削減

SCHEME =
非推奨。

3.0で削除されます。

MongoDB接続stringスキーム。

以来

  • 2.0.0

'mongodb://'.freeze
MONGODB_SCHEME =

MongoDB接続stringスキーム ルート。

以来

  • 2.5.0

'mongodb'.freeze
MONGODB_SRV_SCHEME =

MongoDB srv プロトコル接続stringスキーム ルート。

以来

  • 2.5.0

'mongodb+srv'.freeze
INVALID_SCHEME =
非推奨。

無効なスキームのエラーの詳細。

以来

  • 2.1.0

"無効なスキーム。スキームは " #{ MONGODB_SCHEME } " または " #{ MONGODB_SRV_SCHEME } ]である必要があります.freeze
FORMAT =

MongoDB URI 形式の仕様。

以来

  • 2.0.0

' MongoDB ://[username:password@]host1[:port1][,host2[:port2] ' +
',...[,hostN[:portN]]][/[database][?options]]'.freeze
ヘルプ =

MongoDB URI(接続string )ドキュメントURL

以来

  • 2.0.0

 https://www.mongodb.com/ja-jp/docs/manual/reference/ connection-string/ .freeze
安全ではない =

URL でエンコードする必要がある文字は安全ではありません。

以来

  • 2.1.0

/[\:\/\@]/
PERCENT_CHAR =

ユーザー認証でエンコードする必要があるパーセント記号。

以来

  • 2.5.1

/\%/
UNIX_SOCKET =

Unix ソケットのサフィックス。

以来

  • 2.1.0

/.sock/
HOST_DELim =

ホストを区切る文字。

以来

  • 2.1.0

','.freeze
HOST_PART_DELim =

ホストとポートを区切る文字。

以来

  • 2.1.0

':'.freeze
DATABASE_DELim =

データベースを区切る文字。

以来

  • 2.1.0

'/'.freeze
URI_OPTS_DELIM =

オプションを区切る文字。

以来

  • 2.1.0

'?'.freeze
INDIV_URI_OPTS_DELIM =
非推奨。

複数のオプションを区切る文字。

以来

  • 2.1.0

'&'.freeze
URI_OPTS_VALUE_DELIM =

オプションとその値を区切る文字。

以来

  • 2.1.0

'='.freeze
AUTH_USER_PWD_DELim =

ユーザー名とパスワードを区切る文字。

以来

  • 2.1.0

':'.freeze
AUTH_DELim =

認証資格情報を区切る文字。

以来

  • 2.1.0

'@'.freeze
SCHEME_DELim =

スキーム区切り文字。

以来

  • 2.5.0

'://'.freeze
INVALID_OPTS_VALUE_DELim =

無効なオプション形式のエラーの詳細。

以来

  • 2.1.0

"オプションとその値は区切り文字である必要があります" +
" by ' { { URI_OPTS_VALUE_DELim } に よる '.freeze
UTES_USER_PWD =

URL エンコードされていないユーザー名またはパスワードのエラーの詳細。

以来

  • 2.1.0

"ユーザー名とパスワードは URL エンコードする必要があります。 ".freeze
UTES_UNIX_SOCKET =

URL がエンコードされていない Unix ソケット パスのエラーの詳細。

以来

  • 2.1.0

" UNIX ドメイン ソケットは URL コード化する必要があります。 ".freeze
UTES_DATABASE =

認証データベース名が null でない場合のエラーの詳細。

以来

  • 2.1.0

"認証データベースは URL コード化する必要があります。 ".freeze
INVALID_OPTS_DELim =

データベース区切り文字なしでオプションを提供する際のエラーの詳細。

以来

  • 2.1.0

オプションが指定されている場合は、 データベース区切り文字 ' # { DATABASE_DELim } ' が存在する必要があり ます 。.freeze
INVALID_HOST =

欠落しているホストのエラーの詳細。

以来

  • 2.1.0

ホストがありません。少なくとも 1 つを提供する必要があります.freeze
INVALID_port =

無効なポートのエラーの詳細。

以来

  • 2.1.0

無効なポート。ポートは0より大きく65536より小さい整数である必要があります".freeze
READ_MODE_MAP =

URI 読み込み設定 (read preference) モードから Ruby ドライバー読み込み設定 (read preference) モードへのマップ

以来

  • 2.0.0

{
  'プライマリ'            => : プライマリ,
  'プライマリ優先'   => :primary_preferred,
  'セカンダリ'          => :secondary,
  'セカンダリ' => :secondary_preferred,
  最も近い            => :nearest
}.freeze
AUTH_MECH_MAP =

Ruby ドライバー メカニズムへの URI 認証メカニズムのマップ

以来

  • 2.0.0

{
  'GSSAPI'       => :gssapi,
  'MONGODB-AWS'  => :aws,
  #MONGODB-CR は非推奨であり、ドライバー バージョン3.0で削除されます
  'MONGODB-CR'   => :mongodb_CR,
  'MONGODB-X509' => :mongodb_x 509,
  'PLAIN'        => :lain,
   SCRAM-SHA- 1   => :SCRAM,
   SCRAM-SHA- 256  => :SCRAM 256,
}.freeze
REPATEABLE_OPTIONS =

URI 内に複数回使用することが許可されるオプション。

「tls」と「ssl」のすべてのインスタンスが同じ値を持つという URI オプション仕様の要件に従うには、それらのオプションに対して渡されるすべての値を追跡する必要があります。 これらが競合しないと仮定すると、URI を解析した後すぐに 1 つの値に圧縮されます。

以来

  • 2.1.0

[ : tags_sets, :ssl ]

Loggableに含まれる定数

ログ可能::PRFIX

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

クラスメソッドの概要を折りたたむ

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

Address::Validatorに含まれるメソッド

#validate_address_str!

Loggableに含まれるメソッド

#log_debug, #log_error, #log_fatal, #log_info, #log_warn, #logger

コンストラクターの詳細

#初期化(string, オプション = {{}) = {} = 初期化] = URI

指定された string から新しい URI を作成します。

例:

新しい URI を作成します。

URI.new('mongodb://localhost:27017')

パラメーター:

  • string ( string )

    解析する URI 。

  • options ハッシュ (デフォルトは{}です)

    オプション。

オプション ハッシュ( options ):

  • :logger ロガー

    使用するカスタム ロガー。

次の値が発生します。

以来

  • 2.0.0



284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/uri.rb', 行284

デフォルト 初期化(string, options = {})
  ただし、 string
    発生 エラー::InvalidURI.新着情報(string, ' URI は nil ではなく string である必要があります。 ')
  end
  場合 string.空の場合
    発生 エラー::InvalidURI.新着情報(string, URI を解析できません。 ')
  end

  @string = string
  @options = options
  parsed_scheme, _, 残り = string.パーティション(SCHEME_DELim)
  ただし、 parsed_scheme == スキーム
    raise_invalid_error!(" 無効なスキーム ' #{ parsed_scheme } '。スキームは ' #{ MONGODB_SCHEME } ' である必要があります。SRV URI を解析するには URI#get を使用し ます 。)
  end
  場合 残り.空の場合
    raise_invalid_error!( URI にホストがありません)
  end
  parse!(残り)
  validate_uri_options!
end

インスタンス属性の詳細

#オプション=オブジェクト(読み取り専用)

URI パーサー オブジェクト オプション。

以来

  • 2.0.0



39
40
41
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/uri.rb', 行39

デフォルト options
  @options
end

サーバー=オブジェクト(読み取り専用)

URI で指定されたサーバー。

以来

  • 2.0.0



49
50
51
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/uri.rb', 行49

デフォルト サーバー
  @servers
end

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

Mongo::Options::URI で指定されたオプションを編集しました。

以来

  • 2.1.0



44
45
46
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/uri.rb', 行44

デフォルト uri_options
  @uri_options
end

クラスメソッドの詳細

.get(string, opts = {}) ⇒ URI, URI::SRVProtocol

URI オブジェクトまたは SRVProtocol URI オブジェクトのいずれかを取得します。

例:

URI オブジェクトを取得します。

URI.get(string)

パラメーター:

  • string ( string )

    解析する URI 。

  • ops ハッシュ (デフォルトは{}です)

    オプション。

  • options ハッシュ

    カスタマイズ可能なオプションのセット

次の値を返します。

以来

  • 2.5.0



230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/uri.rb', 行230

デフォルト 自己.得る(string, ops = {})
  ただし、 string
    発生 エラー::InvalidURI.新着情報(string, ' URI は nil ではなく string である必要があります。 ')
  end
  場合 string.空の場合
    発生 エラー::InvalidURI.新着情報(string, URI を解析できません。 ')
  end

  スキーム, _, _ = string.パーティション(SCHEME_DELim)
  ケース スキーム
    次の場合: MONGODB_SCHEME
      URI.新着情報(string, ops)
    次の場合: MONGODB_SRV_SCHEME
      SRVProtocol.新着情報(string, ops)
    else
      発生 エラー::InvalidURI.新着情報(string, " 無効なスキーム ' # {schema } } '。スキームは ' # { MONGODB_SCHEME } ' または ' #{ MONGODB_SRV_SCHEME } ' である必要があり ます)
  end
end

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

# client_optionsMongo::Options::Redacted

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

例:

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

uri.client_options

次の値を返します。

以来

  • 2.0.0



259
260
261
262
263
264
265
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/uri.rb', 行259

デフォルト client_options
  ops = uri_options.タップ 行う |ops|
    ops[:database] = @database 場合 @database
  end

  @user ? ops.merge(Credentials) : ops
end

認証情報=ハッシュ = ハッシュ

URI で提供されている認証情報を取得します。

例:

認証情報を取得します。

uri.credentials

次の値を返します。

  • ハッシュ

    認証情報。

    • :user [ string ] ユーザー。

    • :password [ string ] 提供されたパスワード。

以来

  • 2.0.0



315
316
317
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/uri.rb', 行315

デフォルト Credentials
  { :user => @user, :password => @password }
end

#databaseString

URI で指定されたデータベースを取得します。

例:

データベースを取得します。

uri.database

次の値を返します。

  • ( string )

    データベース。

以来

  • 2.0.0



327
328
329
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/uri.rb', 行327

デフォルト database
  @database ? @database : Database::管理者
end

# srv_records =オブジェクト

以来

  • 2.0.0



267
268
269
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/uri.rb', 行267

デフォルト srv_records
  nil
end

# to_s = string

URI をstringとして取得します。

例:

URI をstringとして取得します。

uri.to_s

次の値を返します。

  • ( string )

    URI string。

以来

  • 2.0.0



337
338
339
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/uri.rb', 行337

デフォルト to_s
  再構築_uri
end