Javascript 使用nodejs连接到RavenDB
我正在使用node连接到RavenDBJavascript 使用nodejs连接到RavenDB,javascript,node.js,ravendb,Javascript,Node.js,Ravendb,我正在使用node连接到RavenDB 但是当尝试创建连接时,在这一步 我不知道该在数据库url和默认数据库名称中放入什么 我把 数据库url=localhost:5000 默认数据库名称=test(我的数据库名称是test) 控制台显示此错误加载失败http://localhost:5000/topology?name=test 如何创建此连接 编辑 我配置程序 这是我的文件app.js const DocumentStore=require('ravendb')。默认值; const s
但是当尝试创建连接时,在这一步
我不知道该在
数据库url
和默认数据库名称中放入什么
我把
数据库url
=localhost:5000
默认数据库名称
=test(我的数据库名称是test)
控制台显示此错误加载失败http://localhost:5000/topology?name=test
如何创建此连接
编辑
我配置程序
这是我的文件app.js
const DocumentStore=require('ravendb')。默认值;
const store=DocumentStore.create('localhost:5000','test');
store.initialize();
const session=store.openSession()代码>
当我用node运行这个文件时,它显示了错误:(但是如果我删除行
const session=store.openSession();
,它会编译得很好,所以我认为问题出在会话的某个地方。
错误日志:
“C:\Program Files\JetBrains\WebStorm 2017.2\bin\runnerw.exe”D:\nodejs\node.exe D:\nodeProject\demoraven\app.js
未处理的拒绝ee:Node localhost:5000已关闭
在d.finally.catch.e(d:\nodeProject\demoraven\node\u modules\ravendb\lib\ravendb node.js:2:52762)
在tryCatcher(D:\nodeProject\demoraven\node\u modules\bluebird\js\release\util.js:16:23)
在Promise.\u settlePromiseFromHandler(D:\nodeProject\demoraven\node\u modules\bluebird\js\release\Promise.js:512:31)
在Promise.\u settlePromise(D:\nodeProject\demoraven\node\u modules\bluebird\js\release\Promise.js:569:18)
按承诺。_settlePromise0(D:\nodeProject\demoraven\node\u modules\bluebird\js\release\Promise.js:614:10)
按承诺。_结算项目(D:\nodeProject\demoraven\node\u modules\bluebird\js\release\Promise.js:689:18)
在Async.\u drainQueue(D:\nodeProject\demoraven\node\u modules\bluebird\js\release\Async.js:133:16)
在Async.\u drainQueues(D:\nodeProject\demoraven\node\u modules\bluebird\js\release\Async.js:143:10)
位于Immediate.Async.drainQueues(D:\nodeProject\demoraven\node\u modules\bluebird\js\release\Async.js:17:14)
运行时回调(timers.js:789:20)
在tryOnImmediate(timers.js:751:5)
在processImmediate[as\u immediateCallback](timers.js:722:5)
我不知道在数据库url和默认数据库名称和
我把
数据库URL是运行Raven服务器的HTTP地址。您可以下载Raven并在本地运行它。或者,如果您只是在测试,您可以连接到位于
对于DefaultDatabase,这是您要连接到的数据库。如果您已经创建了数据库,请使用该名称。否则,请输入任何名称,系统将为您创建该名称
总之,您的代码应该如下所示:
const dbUrl = "http://4.live-test.ravendb.net"; // Alternately, if you're running Raven Server locally, use http://localhost:8080
const store = DocumentStore.create(dbUrl, "MyTestingDatabase");
store.initialize();
正如@judahimango所说,您可以使用他提供的url测试代码是否能够连接到revendb数据库
我认为您使用了错误的端口连接到ravendb,即您应该设置数据库url=localhost:8080
而不是localhost:5000
,因为ravendb的默认端口是8080
欢迎使用SO!请阅读有关如何提问的提示。这是我安装ravendb时配置的端口o urllocalhost:5000
加载良好感谢您的帮助,但请查看我编辑的帖子,我有一些其他问题您在获取拓扑时遇到错误。没关系。Raven可能正在检查您的数据库是否属于群集。(如果不是,您可能会收到404,IIRC)。换句话说,不要担心拓扑获取错误。尽管出现此错误,您仍然能够使用数据库吗?不,它显示行:进程已完成,退出代码0RavenDB刚刚为NodeJS发布了first stable。我建议尝试一下: