Cloudant NodeJS出现意外的“server_admin required”错误

时间:2016-06-02 14:00:30

标签: node.js mocha ibm-cloud cloudant

我通过Node.JS模块使用Cloudant服务,通过Bluemix VCAP_SERVICES(或本地副本)提供凭据。该实例使用

创建
var Cloudant = require('cloudant');
// var cloudantCreds obtained from process.env.VCAP_SERVICES
var username = cloudantCreds.username;
var password = cloudantCreds.password;
var cloudant = Cloudant({
    account:username, 
    password:password
});

我编写了一个函数,可以在用户请求时自动创建/删除数据库,并且成功运行。这是内部使用的

cloudant.db.create(databaseName, function(err, res){
     // Handle
});

然而,最近我收到一个错误:

'server_admin access is required for this request'

我只使用一套凭据和一个帐户。在curl的命令行中使用这些凭据允许我成功创建/删除数据库,但似乎无法通过node.js模块执行此操作?

据我所知,我没有更改任何与Node.js服务器的此功能相关的代码。

是什么原因导致我现在需要server_admin访问?从错误消息的性质来看,我可能已通过身份验证,但未获得授权?

2 个答案:

答案 0 :(得分:1)

事实证明这是我的错误,尽管Cloudant并不是特别有用。

我正在尝试使用不允许的名称创建数据库,例如以下划线开头或包含大写字母。更改数据库名称,一切正常。

答案 1 :(得分:0)

如果您的数据库以下划线为前缀,则会抛出错误......