来自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 (将#修改为@)