Cloudant NodeJS 出现意外的“server_admin required”错误
unexpected `server_admin required` error with Cloudant NodeJS
我正在通过 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
});
我编写了一个函数,可以在用户请求时自动 create/delete 一个数据库,并且成功运行。这个内部使用
cloudant.db.create(databaseName, function(err, res){
// Handle
});
但是,最近我得到一个错误:
'server_admin access is required for this request'
我只使用一组凭据和一个帐户。在带有 curl 的命令行中使用这些凭据可以让我成功 create/delete 数据库,但似乎无法通过 node.js 模块做到这一点?
据我所知,我没有更改与 Node.js 服务器的此功能相关的任何代码。
是什么导致我现在需要 server_admin 访问权限?从错误消息的性质来看,我大概是通过了身份验证,但没有被授权?
事实证明这是我的一个错误,尽管 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
});
我编写了一个函数,可以在用户请求时自动 create/delete 一个数据库,并且成功运行。这个内部使用
cloudant.db.create(databaseName, function(err, res){
// Handle
});
但是,最近我得到一个错误:
'server_admin access is required for this request'
我只使用一组凭据和一个帐户。在带有 curl 的命令行中使用这些凭据可以让我成功 create/delete 数据库,但似乎无法通过 node.js 模块做到这一点?
据我所知,我没有更改与 Node.js 服务器的此功能相关的任何代码。
是什么导致我现在需要 server_admin 访问权限?从错误消息的性质来看,我大概是通过了身份验证,但没有被授权?
事实证明这是我的一个错误,尽管 Cloudant 没有提供特别有用的信息。
我试图用不允许的名称创建数据库,例如以下划线开头或包含大写字母。更改数据库名称,一切正常。
如果您的数据库以下划线为前缀,它将抛出错误...