我正在尝试在 cloudant 中复制数据库,并在“我的数据库”条目选项卡中添加了一个数据库名称。单击复制时,它要求输入密码,我使用了我的 bluemix 密码,但它不起作用。
任何人都可以帮助获取此密码吗?
在复制数据库时,cloudant 不使用 bluemix 密码。您可以在此处简单地按照以下步骤操作:1) 转到您的仪表板并在您的应用程序上使用时钟。2) Cloudant NoSQL DB 应在您的应用程序中列为服务。3)点击显示凭据 4)它会给你一个不同条目的列表,你的用户名和密码也将在那里列出。您的密码将以下列形式列出:“密码”:“3b0c7b5305daa1616130e4d3e29a24b15a879215ccd56f568396110d55241041”,
复制引号下的所有字符,这将是您的密码。
此问题已通过以下开发人员工作文章解决:
简而言之,您需要使用 VCAP_SERVICES 访问数据库的所有详细信息(通过仪表板)并将其包含在您的应用程序代码中。
以下是 node.js+mongodb 中 VCAP_SERVICES 的示例用法,用于获取 bluemix 仪表板生成的所有详细信息(包括 passwd):
console.log('VCAP SERVICES: ' + JSON.stringify(process.env.VCAP_SERVICES, null, 4));
var mongoUrl;
if(process.env.VCAP_SERVICES) {
var vcapServices = JSON.parse(process.env.VCAP_SERVICES);
for (var svcName in vcapServices) {
if (svcName.match(/^mongo.*/)) {
mongoUrl = vcapServices[svcName][0].credentials.uri;
mongoUrl = mongoUrl || vcapServices[svcName][0].credentials.url;
break;
}
}
希望它会有所帮助。