node.js - 如何使用摘要身份验证在 MongoDB Atlas API 上进行身份验证?

标签 node.js mongodb authentication digest-authentication mongodb-atlas

我想使用其 API“https://cloud.mongodb.com/api/atlas/v1.0/groups”获取 MongoDB 中的项目列表,但每次我都会收到错误“401 您无权使用此资源”。

根据docs使用摘要认证。

似乎我以错误的方式传递 Private_key 和 Public_key。

下面是我的请求对象

{
url: 'https://cloud.mongodb.com/api/atlas/v1.0/groups',
method: 'GET',
headers: {
  'Accept': 'application/json',
},
auth: {
  user: 'Public_Key',
  pass: 'Private_key'
  }
}  

任何人都可以帮我解决这个问题吗?

最佳答案

您缺少的是“sendImmediately”键。您需要将其发送到您的 auth 对象中,如下所示:

   request({
       method: 'GET',
       auth: {
       "user": Public_Key,
       "pass": Private_key,
       "sendImmediately": false
   },
       url: 'https://cloud.mongodb.com/api/atlas/v1.0?pretty=true'
   })

关于node.js - 如何使用摘要身份验证在 MongoDB Atlas API 上进行身份验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58023794/

相关文章:

node.js - 为什么 mongodb 中的 addToSet 在数组字段中不起作用?

php - 如果用户登录到另一个网站,则自动登录到当前网站

javascript - 如何在 JavaScript 客户端代码中保护用户凭据(在 Neo4J 中保留)?

node.js - Nodejs中间件.pre显示不是一个函数

node.js - 如何像在sql中一样在mongodb中正确使用 'exist'函数?

node.js - 使用 Mocha 和 Sinon 在 Node JS 中测试 promise 回调

javascript - 在 MongoDB 中存储大数组

django - django + PyMongo 池化的最佳实践?

ios - 我可以在 iOS 钥匙串(keychain)中为单个用户存储/检索多个密码吗?

node.js - 带有 grunt 的 Concat bower 组件