首先,我是使用cloudant的新手,所以这对我来说是一个非常陡峭的学习曲线。任何帮助表示赞赏。到目前为止,我能找到的所有信息似乎都是几年前的过时SO帖子。
如果我单击该服务,则可以看到为它正确制作了服务凭据(已删除信息):
{
"apikey": "********************************************",
"host": "******************-bluemix.cloudantnosqldb.appdomain.cloud",
"url": "https://***********-bluemix.cloudantnosqldb.appdomain.cloud",
"username": "***********-bluemix"
}
但是,当我尝试使用以下代码在pouchDB中使用这些凭据访问此文件时:
let db = new PouchDB(userCredentials.url, {
auth: {
username: 'userCredentials.username',
password: 'userCredentials.apiKey'
}
});
我遇到一个错误,它无法使用错误的用户名或密码进行身份验证。
我还尝试通过IAM管理部分并在其中使用服务凭据,确保我的凭据已附加API密钥。使用该方法时,我将auth对象设置为username:apikeyname和password:实际密钥值。但是每次,我仍然遇到相同的身份验证错误。
任何有见识的人都会有很大帮助!一些注意事项,我确保已启用CORS,并且将身份验证设置设置为仅IAM(禁用了旧式登录)
答案 0 :(得分:1)
由于您已请求仅使用IAM的身份验证帐户,因此不能使用基本身份验证。不幸的是,在撰写本文时,PouchDB不支持IAM。
答案 1 :(得分:0)
您要查找的密码是password
,而不是apikey
。
您可以使用具有用户名和密码的常规/基本身份验证,也可以使用IAM API密钥,但不能将它们混合使用。