我有一个名为 users
的模型,并且有一个用于身份验证的登录 API。 API 工作正常,但现在当我向登录 API 发出请求时,出现此错误
{
"message": "Cast to ObjectId failed for value \"login\" at path \"_id\" for model \"users\"",
"name": "CastError",
"stringValue": "\"login\"",
"kind": "ObjectId",
"value": "login",
"path": "_id"
}
我已经在我的 postman 和我的应用程序中尝试过。我遇到同样的问题。
我尝试的步骤:
- 我删除了登录 API 中的所有代码,并控制台记录了
req.body
。即使这样,我也遇到了同样的问题。 我清除了数据库中的所有数据并从头开始,甚至遇到了同样的问题。
我还删除了登录 API 并向其发出了请求。理想情况下,它应该返回“无法发布”,但我遇到了同样的问题。
Mongoose 版本:5.1.4
最佳答案
当您传递的参数根本无法转换为 Mongoose ObjectID 时,就会发生此转换类型错误。因此,从您在这里提供的小内容来看,值“login”似乎以某种方式到达 Mongoose 模型,并且它尝试将其转换为 Mongo 对象 ID,这显然应该失败。
发布代码以进一步调查错误
关于node.js - Actor 错误: Cast to ObjectId failed for value "login" at path \"_id\" for model "users",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53952986/