【发布时间】:2020-05-29 20:50:38
【问题描述】:
我正在尝试使用 node js 和 angular 来制作前端。 对于后端,我尝试在代码中访问 couchdb 数据,如下所示:
const express = require('express');
const bodyParser = require('body-parser');
const path = require('path');
const NodeCouchdb = require('node-couchdb');
const couch = new NodeCouchdb({
auth:{
user: 'admin'
password: '**' ///hidden for security
}
});
couch.listDatabases().then(function(dbs){
console.log(dbs);
});
const app = express();
app.set('view engine', 'ejs');
app.set('views', path.join(__dirname, 'views'));
app.use (bodyParser.json());
app.use(bodyParser.urlencoded({extended: false}));
app.get('/', function(req,res){
res.render('index');
});
app.listen(3000, function(){
console.log('Server is started on Port 3000');
})
我的 couchdb 主机是这样的 *http://admin@***@172.26.132.189:5984*
上面的代码只是试图列出我沙发数据库服务器中的数据库。但是当我运行代码时,它给了我以下错误: {error:unauthorised: 名称或密码不正确}
我尝试在上面的代码中通过添加这些行来定义我的主机:
const couchExternal = new NodeCouchDb({
host: 'couchdb.external.service',
protocol: 'https://172.26.132.189',
port: 5984
});
但仍然给我同样的错误。
我提供了正确的凭据。 有人可以帮我解决问题或告诉我哪里出错了吗?
【问题讨论】:
-
:/5984...你确定/应该在那里吗?通常使用:5984声明端口 -
另外,
const couch = NodeCouchdb({不应该是const couch = new NodeCouchdb({? -
第三,协议应该是
https而不是https://172.26.132.189,因为https是协议,但https://172.26.132.189不是 -
@JaromandaX 问题中有一些错别字,所以我编辑了它们..抱歉
-
@JaromandaX 我已经尝试了所有将协议作为 https 并将主机作为 URL 但仍然没有解决错误
标签: javascript node.js angular npm couchdb