微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

来自expressjs查询参数的Sqlite3查询?

如何解决来自expressjs查询参数的Sqlite3查询?

我正在开发一个 rest api,我有一个带有未定义数量查询参数的端点。 用户可以提供带有 0 的查询参数,例如10个这样

http://{address}/api/user?param1=1&param2=2&param3=3....

我需要在 sqlite3 和 expressjs 中构造一个函数,以便如果用户不提供查询参数,则将显示所有行,例如

app.get("/api/user",(req,res,next) => {
    var sql = "select * from user"
    db.get(sql,(err,row) => {
        if (err) {
          res.status(400).json({"error":err.message});
          return;
        }
        res.json({
            "message":"success","data":row
        })
      });
});

如果例如然后提供三个参数..

app.get("/api/user",next) => {
    var sql = "select * from user where param1= ? and param2=? and param3=?"
    var params = [req.query.param1,req.query.param2,req.query.param3]
    db.get(sql,params,"data":row
        })
      });
});

等等不同的组合..

处理这种情况的最佳做法是什么?查询参数的顺序也可以不同。为每个组合构建每个函数是相当困难的。 nodejs 有没有办法处理这种情况?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。