UnhandledPromiseRejectionwarning:CastError: {解决办法之一}
错误缘由:我是要查询数据库中对应的id,进行数据删除操作。但是得到的结果却是报错。
报错信息为:UnhandledPromiseRejectionwarning:CastError: Cast to ObjectId failed for value " 5ffbb96755245c37047691fa" at path “_id” for model "User
我的错误是req.query.id输出的结果和我手动输入的id值一样,但使用findOne()方法就是查询不出来数据库中对应的数据。然后对照终端显示仔细看了一下,发现可能是因为空格的原因。
因为req.query.id的打印结果有空格导致的错误。
如下所示终端显示空格:
使用了如下代码进行检测得出结论:
if (req.query.id.trim() === '5ffbb8e355245c37047691f4') { console.log('结果一样 ') } else { console.log(req.query.id) }
trim()方法,去掉字符串两边的空格。本次输出结果为:”结果一样“。