我正在尝试使用thinky.io连接到compose.io上的托管rethinkDB服务器。
根据文档,我可以使用r.connect连接以下内容:
const r = require('rethinkdb');
const fs = require('fs');
fs.readFile('../cacert', function(err, caCert) {
r.connect({
authKey: 'MY_KEY',
host: 'aws-us-east-1-portal.5.dblayer.com',
port: 11190,
ssl: {
ca: caCert
}
}, function(error, conn) {
r.dbList().run(conn, function(err, results) {
console.log(results);
})
})
});然而,当使用thinky.io时,它将不接受SSL证书,我将使用以下不工作的方法进行连接:
const thinky = require('thinky')({
authKey: 'MY_KEY',
host: 'aws-us-east-1-portal.5.dblayer.com',
port: 11190,
});我是否可以使用thinky.io、或连接,使用r.connect()进行连接,然后使用与thinky.io的现有连接?
我的node.js服务器托管在heroku上。
谢谢
发布于 2016-08-06 13:21:08
使用同步readFile
使用同步readFile的解决方案:
在设置rethinkdb数据库时,使用thinky.io 和compose.io的一种方法是在设置thinky.io连接之前读取ca证书时使用同步readFile方法。
const fs = require('fs');
const config = require('../config')
const caCert = fs.readFileSync('cacert')
const thinky = require('thinky')({
authKey: config.authKey,
host: 'aws-us-east-1-portal.5.dblayer.com',
port: 11190,
ssl: {
ca: caCert
}
});
module.exports = thinky;https://stackoverflow.com/questions/38803264
复制相似问题