Spec-Zone.ru › RethinkDB javascript

Команда ReQL: connect

Синтаксис команды

r.connect([options, ]callback)
r.connect([host, ]callback)
r.connect([options]) → promise
r.connect([host]) → promise

Описание

Создает новое подключение к серверу базы данных. Принимает следующие параметры:

  • host: хост для подключения (по умолчанию localhost).
  • port: порт для подключения (по умолчанию 28015).
  • db: базу данных по умолчанию (по умолчанию test).
  • user: учетную запись пользователя для подключения (по умолчанию admin).
  • password: пароль для учетной записи пользователя для подключения (по умолчанию '', пустой).
  • timeout: время ожидания в секундах для открытия подключения (по умолчанию 20).
  • ssl: хеш параметров для поддержки SSL-подключений (по умолчанию null). В настоящее время доступен только один параметр, и если указан параметр ssl, этот ключ обязателен:
    • ca: список Node.js Buffer объектов, содержащих сертификаты CA для SSL.

Если подключение не может быть установлено, в обратный вызов будет передано значение ReqlDriverError вместо подключения.

Возвращаемый объект подключения будет содержать две свойства, содержащие порт и адрес подключения:

conn.clientPort;
conn.clientAddress;

Для использования SSL с RethinkDB требуется прокси-программное обеспечение на сервере, например, Nginx, HAProxy или SSL-туннель. RethinkDB будет шифровать трафик и проверять сертификат CA, чтобы предотвратить атаки «человек посередине». Для получения дополнительных сведений обратитесь к документации вашего прокси-сервера.

В качестве альтернативы можно использовать встроенную поддержку TLS RethinkDB TLS support.

Пример: Открытие подключения с использованием значения хоста и порта по умолчанию, указав базу данных по умолчанию.

r.connect({
    db: 'marvel'
}, function(err, conn) {
    // ...
});

Если обратный вызов не указан, будет возвращено обещание.

var promise = r.connect({db: 'marvel'});

Пример: Открытие нового подключения к базе данных.

r.connect({
    host: 'localhost',
    port: 28015,
    db: 'marvel'
}, function(err, conn) {
    // ...
});

В качестве альтернативы можно использовать обещания.

var p = r.connect({
    host: 'localhost',
    port: 28015,
    db: 'marvel'
});
p.then(function(conn) {
    // ...
}).error(function(error) {
    // ...
});

Пример: Открытие нового подключения к базе данных, указав сочетание пользователя/пароля для аутентификации.

r.connect({
    host: 'localhost',
    port: 28015,
    db: 'marvel',
    user: 'herofinder',
    password: 'metropolis'
}, function(err, conn) {
    // ...
});

Пример: Открытие нового подключения к базе данных с использованием SSL-прокси.

var fs = require('fs');
fs.readFile('/path/to/cert', function (err, caCert) {
    if (!err) {
        r.connect({
            host: 'localhost',
            port: 28015,
            db: 'marvel',
            authKey: 'hunter2',
            ssl: {
                ca: caCert
            }
        }, function(err, conn) {
            // ...
        });
    } else {
        console.log(err);
    }
});

Связанные команды

  • use
  • close

© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
https://rethinkdb.com/api/javascript/connect/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API