클래스: Mongo::URI
- 상속:
-
객체
- 객체
- Mongo::URI
- 다음을 포함합니다.
- 주소::Validator, Loggable
- 다음에 정의됨:
- build/ruby-driver-v2.19/lib/mongo/uri.rb,
build/ruby-driver-v2.19/lib/mongo/uri/srv_protocol.rb,
build/ruby-driver-v2.19/lib/mongo/uri/options_mapper.rb
개요
URI 클래스는 사용자가 MongoDB 연결 string 형식 사양에 정의된 대로 uri를 구문 분석할 수 있는 방법을 제공합니다.
www.mongodb.com/ko-kr/docs/manual/reference/connection-string/
직접 알려진 하위 클래스
네임스페이스 아래에 정의됨
클래스: OptionsMapper, SRVProtocol
상수 요약 접기
- SCHEME =
더 이상 사용되지 않습니다.
3.0 에서 제거될 예정입니다.
MongoDB 연결 string 체계입니다.
'MongoDB //'.동결
- MONGODB_SCHEME =
MongoDB 연결 string 체계 루트입니다.
'mongodb'.동결
- MONGODB_SRV_SCHEME =
MongoDB srv 프로토콜 연결 string 체계 루트입니다.
'mongodb+srv'.동결
- INVALID_SCHEME =
더 이상 사용되지 않습니다.
잘못된 체계에 대한 오류 세부 정보입니다.
"체계가 잘못되었습니다. 체계는 '#{MONGODB_SCHEME}' 또는 '#{MONGODB_SRV_SCHEME}'이어야 합니다..동결
- FORMAT =
MongoDB URI 형식 사양입니다.
'MongoDB://[username:password@]host1[:port1][,host2[:port2]' + ',...[,hostN[:portN]]][/[database][?options]]'.동결
- HELP =
MongoDB URI(연결 string) 문서 URL
'https://www.mongodb.com/ko-kr/docs/manual/reference/connection-string/'.동결
- UNSAFE =
urlen코딩해야 하는 안전하지 않은 문자입니다.
/[\:\/\@]/
- PERCENT_CHAR =
사용자 자격 증명에 인코딩해야 하는 백분율 기호입니다.
/\%/
- UNIX_SOCKET =
유닉스 소켓 접미사.
/.sock/
- HOST_DELIM =
호스트를 구분하는 문자입니다.
','.동결
- HOST_PORT_DELIM =
호스트와 포트를 구분하는 문자입니다.
':'.동결
- DATABASE_DELIM =
데이터베이스를 구분하는 문자입니다.
'/'.동결
- URI_OPTS_DELIM =
문자 구분 옵션입니다.
'?'.동결
- INDIV_URI_OPTS_DELIM =
더 이상 사용되지 않습니다.
여러 옵션을 구분하는 문자입니다.
'&'.동결
- URI_OPTS_밸류_DELIM =
옵션과 해당 값을 구분하는 문자입니다.
'='.동결
- AUTH_USER_PWD_DELIM =
사용자 이름과 비밀번호를 구분하는 문자입니다.
':'.동결
- AUTH_DELIM =
인증 자격 증명을 구분하는 문자입니다.
'@'.동결
- SCHEME_DELIM =
체계 구분자.
'//'.동결
- INVALID_OPTS_밸류_DELIM =
잘못된 옵션 형식에 대한 오류 세부 정보입니다.
"옵션과 해당 값은 반드시 구분해야 합니다" + " by '# {URI_OPTS_밸류_DELIM} '.동결
- UNESCAPED_USER_PWD =
URL렌코딩되지 않은 사용자 이름 또는 비밀번호에 대한 오류 세부 정보입니다.
"사용자 이름과 비밀번호는 URL렌코딩해야 합니다.".동결
- UNESCAPED_UNIX_SOCKET =
URL렌코딩되지 않은 유닉스 소켓 경로에 대한 오류 세부 정보입니다.
"UNIX 도메인 소켓을 URL렌코딩해야 합니다.".동결
- UNESCAPED_DATABASE =
URL렌코딩되지 않은 인증 데이터베이스 이름에 대한 오류 세부 정보입니다.
"인증 데이터베이스를 URL렌코딩해야 합니다.".동결
- INVALID_OPTS_DELIM =
데이터베이스 구분 기호 없이 옵션을 제공하는 경우의 오류 세부 정보입니다.
"옵션이 지정된 경우데이터베이스 구분 기호 '#{DATABASE_DELIM}'이(가) 있어야 합니다.".동결
- INVALID_HOST =
누락된 호스트에 대한 오류 세부 정보입니다.
"호스트가 누락되었습니다. 하나 이상을 제공해야 합니다.".동결
- INVALID_PORT =
잘못된 포트에 대한 오류 세부 정보입니다.
"포트가 잘못되었습니다. 포트는 0 보다 크고 65536보다 작은 정수여야 합니다.".동결
- READ_mode_MAP =
URI 읽기 기본 설정 모드를 Ruby 드라이버 읽기 기본 설정 모드로 매핑
{ '프라이머리' => :primary, 'primarypreferred' => :primary_preferred, 'secondary' => :secondary, 'secondarypreferred' => :secondary_preferred, '가장 가까운' => :nearest }.동결
- AUTH_MECH_MAP =
Ruby 드라이버 메커니즘에 대한 URI 인증 메커니즘 매핑
{ 'GSSAPI' => :gssapi, 'MONGODB-AWS' => :aws, # MONGODB-CR은 더 이상 사용되지 않으며 드라이버 버전 3.0에서 제거될 예정입니다. 'MONGODB-CR' => :mongodb_cr, 'MONGODB-X509' => :mongodb_x509, 'PLAIN' => :플레인, 'SCRAM-SHA-1' => :scRAM, 'SCRAM-SHA-256' => :scram256, }.동결
- REPEAtable_OPTIONS =
URI에 두 번 이상 표시되도록 허용된 옵션입니다.
'tls' 및 'sl'의 모든 인스턴스가 동일한 값을 가져야 한다는 URI 옵션 사양 요구 사항을 따르려면 해당 옵션에 대해 전달된 모든 값을 추적해야 합니다. 충돌하지 않는다고 가정하면 URI를 구문 분석한 직후 단일 값으로 압축됩니다.
[ :tag_sets, :ssl ]
Loggable에서 포함된 상수
인스턴스 속성 요약 접기
-
#options ⇒ 객체
읽기 전용
uri 구문 분석기 객체 옵션입니다.
-
서버 #개 ⇒ 객체
읽기 전용
URI에 지정된 서버입니다.
-
#uri_options ⇒ 객체
읽기 전용
Mongo::Options::uri에 지정된 옵션을 삭제했습니다.
클래스 메서드 요약 접기
-
.get(string, opts = {}) ⇒ URI, URI::SRVProtocol
URI 객체 또는 SRVProtocol URI 객체를 가져옵니다.
인스턴스 메서드 요약 접기
-
#client_options ⇒ Mongo::Options::Redacted
인스턴스화 시 Mongo::Client에 전달해야 하는 옵션 해시를 가져오므로 해당 시점에서 자격 증명과 데이터베이스를 병합할 필요가 없습니다. 여기에는 단일 지점만 있습니다.
-
자격 증명 # ⇒ 해시
URI에 제공된 자격 증명을 가져옵니다.
-
#데이터베이스 ⇒ string
URI에 제공된 데이터베이스를 가져옵니다.
-
#initialize(string, options = {}) ⇒ URI
생성자
제공된 string 에서 새 URI를 만듭니다.
- #srv_records ⇒ 객체
-
#to_s ⇒ string
URI를 string 로 가져옵니다.
주소::유효성 검사기에 포함된 메서드
Loggable에 포함된 메서드
#log_debug, #log_error, #log_fatal, #log_info, #log_warn, #logger
생성자 세부 정보
#initialize(string, options = {}) ⇒ URI
제공된 string 에서 새 URI를 만듭니다.
284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/uri.rb', 줄 284 def 초기화(문자열, = {}) 하지 않는 한 문자열 올리다 오류::InvalidURI.신규(문자열, 'URI는 nil이 아닌 string 이어야 합니다.') end 만약 문자열.비어 있나요? 올리다 오류::InvalidURI.신규(문자열, '빈 URI는 구문 분석할 수 없습니다.') end @string = 문자열 @options = parsed_scheme, _, 나머지 = 문자열.파티션(SCHEME_DELIM) 하지 않는 한 parsed_scheme == Scheme raise_invalid_error!(" '#{parsed_scheme} ' 스키마가 잘못되었습니다. 스키마는 '# {MONGODB_SCHEME} } '이어야 합니다 . SRV URI를 구문 분석하려면 URI#get을 사용하세요.") end 만약 나머지.비어 있나요? raise_invalid_error!('URI에 호스트가 없습니다.') end 구문 분석!(나머지) end |
인스턴스 속성 세부 정보
#options ⇒ 객체 (읽기 전용)
uri 구문 분석기 객체 옵션입니다.
39 40 41 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/uri.rb', 줄 39 def @options end |
서버 # 개 ⇒ 객체 (읽기 전용)
URI에 지정된 서버입니다.
49 50 51 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/uri.rb', 줄 49 def 서버 @servers end |
#uri_options ⇒ 객체 (읽기 전용)
Mongo::Options::uri에 지정된 옵션을 삭제했습니다.
44 45 46 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/uri.rb', 줄 44 def @uri_options end |
클래스 메서드 세부 정보
.get(string, opts = {}) ⇒ URI, URI::SRVProtocol
URI 객체 또는 SRVProtocol URI 객체를 가져옵니다.
230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/uri.rb', 줄 230 def self.get(문자열, opts = {}) 하지 않는 한 문자열 올리다 오류::InvalidURI.신규(문자열, 'URI는 nil이 아닌 string 이어야 합니다.') end 만약 문자열.비어 있나요? 올리다 오류::InvalidURI.신규(문자열, '빈 URI는 구문 분석할 수 없습니다.') end Scheme, _, _ = 문자열.파티션(SCHEME_DELIM) case Scheme when MONGODB_SCHEME URI.신규(문자열, opts) when MONGODB_SRV_SCHEME SRVProtocol.신규(문자열, opts) other 올리다 오류::InvalidURI.신규(문자열, " '#{schema}' 체계가 잘못 되었습니다. 체계는' #{MONGODB_SCHEME} ' 또는' #{MONGODB_SRV_SCHEME} ' ") end end |
인스턴스 메서드 세부 정보
#client_options ⇒ Mongo::Options::Redacted
인스턴스화 시 Mongo::Client에 전달해야 하는 옵션 해시를 가져오므로 해당 시점에서 자격 증명과 데이터베이스를 병합할 필요가 없습니다. 여기에는 단일 지점만 있습니다.
259 260 261 262 263 264 265 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/uri.rb', 줄 259 def opts = .탭 do |opts| opts[:database] = @database 만약 @database end @user ? opts.merge(자격 증명) : opts end |
자격 증명 # ⇒ 해시
URI에 제공된 자격 증명을 가져옵니다.
315 316 317 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/uri.rb', 줄 315 def 자격 증명 { : user => @user, :password => @password } end |
#데이터베이스 ⇒ string
URI에 제공된 데이터베이스를 가져옵니다.
327 328 329 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/uri.rb', 줄 327 def database @database ? @database : Database::ADMIN end |
#srv_records ⇒ 객체
267 268 269 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/uri.rb', 줄 267 def srv_records nil end |
#to_s ⇒ string
URI를 string 로 가져옵니다.
337 338 339 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/uri.rb', 줄 337 def to_s 재구성_우리 end |