Clase: Mongo::URI::SRVProtocol

Hereda:
URI
  • Objeto
Mostrar todo
Definido en:
lib/mongo/uri/srv_protocol.rb

Overview

Analizador sintáctico para una URI utilizando el protocolo mongodb+srv, que especifica un DNS para query registros SRV. El driver consultará el servidor DNS para obtener registros SRV en ., con el prefijo _mongodb._tcp Los registros SRV pueden ser utilizados como la lista de nodos iniciales para un Mongo::Client. El driver también consulta un registro TXT que proporcione las opciones por defecto para la cadena de conexión. Se permite únicamente un registro TXT, y solo está permitido un subconjunto de las opciones de Mongo::Client.

Consulta la especificación de Descubrimiento Inicial de lista de nodos iniciales DNS para obtener más detalles.

https://github.com/mongodb/specifications/blob/master/source/initial-dns-seedlist-discovery/initial-dns-seedlist-discovery.md

Ejemplos:

Utiliza el string uri para realizar una conexión de cliente.

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

Desde:

  • 2.5.0

Resumen de atributos de la instancia colapsar

Resumen del método de instancia colapsar

Detalles de atributo de instancias

#query_hostnameString (solo lectura)

Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.

El nombre de host que se especifica en el URI y se utiliza para buscar registros SRV.

Este atributo debe definirse porque SRVProtocol cambia #servidores para que sean el resultado de la búsqueda, en lugar del nombre de host especificado en el URI.

Devuelve:

  • (string)

    El nombre de host utilizado en la búsqueda SRV.

Desde:

  • 2.5.0



68
69
70
# Archivo 'lib/mongo/uri/srv_protocol.rb', línea 68

def consulta_hostname
  @query_hostname
end

#srv_recordsObjeto (solo lectura)

Desde:

  • 2.5.0



35
36
37
# Archivo 'lib/mongo/uri/srv_protocol.rb', línea 35

def srv_records
  @srv_records
end

#srv_resultSrv::Result (solo lectura)

Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve el resultado de la búsqueda SRV.

Devuelve:

Desde:

  • 2.5.0



56
57
58
# Archivo 'lib/mongo/uri/srv_protocol.rb', línea 56

def srv_result
  @srv_result
end

Detalles del método de instancia

#client_optionsHash

Obtiene el hash de opciones que debe pasarse a un Mongo::Client al instanciarlo, para que no tengamos que fusionar las opciones del registro TXT, credenciales y base de datos en ese momento: solo tenemos un único punto aquí.

Ejemplos:

Obtener las opciones del cliente.

uri.client_options

Devuelve:

  • (encriptada)

    Las opciones pasadas al Mongo::cliente

Desde:

  • 2.5.0



47
48
49
50
51
# Archivo 'lib/mongo/uri/srv_protocol.rb', línea 47

def client_options
  opciones = Opciones.fusionar(ssl: true)
  opciones = opciones.fusionar(uri_options).fusionar(database: database)
  @user ? opciones.fusionar(credenciales) : opciones
end