【问题标题】:How to use this as a variable instead of a string?如何将其用作变量而不是字符串?
【发布时间】:2020-08-05 04:33:39
【问题描述】:

我正在使用 node js 和 mongo db 创建一个 API。我想实现搜索。 以下是我的代码

router.post('/searchstudents', async(req, res) => {


    const qualifications = await Qualification.find({
        qualification: /req.body.searchkey/
    });

    res.send(qualifications);

});

在这里,req.body.searchkey 被标识为一个字符串,并且不给我输出。 如何将其用作变量以便我可以发送随机值?

我想在Sql中使用/someString/作为like运算符。

【问题讨论】:

    标签: javascript node.js mongodb api mongoose


    【解决方案1】:

    如果要搜索,可以使用 $regex。

    router.post('/searchstudents', async(req, res) => {
        const qualifications = await Qualification.find({
            qualification: { $regex: new RegExp(req.body.searchkey) }
        }).lean();
        return res.status(200).json(qualifications);
    });
    

    警告:使用这样的正则表达式是不安全的,因为它可以被利用。请阅读本文以了解更多信息。 https://stackoverflow.com/a/52727773/8892700

    【讨论】:

      猜你喜欢
      • 2021-02-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-10
      • 1970-01-01
      • 2012-01-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多