前端传给后端id
和MongoDB
里的_id
进行比较,即使传的id
值一致,也无法操作数据库,是因为前端传过来的id是个字符串,而MongoDB
中的_id
是ObjectId
,所以不一致,无法操作。
首先,在后端引入ObjectID
const ObjectID = require('mongodb').ObjectId;
然后在接口函数中将前端传过来的字符串id转为ObjectID
进行比较,操作数据库
let {id} = req.query; //接受前端传过来的id
id = new ObjectID(id); //转化前端传过来的字符串id为ObjectID
... //然后就可以进行数据库操作
这里的后端使用的是Node.js