在快递上比较params失败(获取请求)

时间:2012-12-19 19:59:15

标签: javascript node.js express

我正在使用express 3.0,当我尝试解析一些查询时,我想测试数据库中是否有与这些id相匹配的其他组件。无论如何,这是我无法开始工作的代码:

function(req, res) {
 var Parking = mongoose.model('Parking');
 var parkingId = req.params.id;
 var userId = req.user['_id'];
 Parking
    .findOne({'_id': parkingId}, function(err, parking) {
        var parkingUserId = parking.userId;
        if (userId == parkingUserId) {
                       ...
                    } else {
                       ...
                    }

req.params.id在url中,req.user ['_ id']来自中间件。

虽然我在两个字段上都使用相同的ID调用此url ....但它仍然会变错...

为什么我做错了?谢谢!

1 个答案:

答案 0 :(得分:3)

您需要将parkingUserId从bson ObjectId对象转换为字符串:

if (userId.toString() == parkingUserId.toString())