如何将查询参数从前端服务传递到服务器?

时间:2019-11-08 01:21:29

标签: node.js angular

我正在尝试从数据库中获取用户数据,但似乎无法弄清楚如何将查询参数发送到服务器来执行此操作。我的前端前端在与服务器不同的端口上运行(不确定是否很重要),但我无法弄清楚。

我尝试使用http.get调用后端,但这似乎不起作用。

这是我的身份验证服务中的代码:

reload() {
    this.http.get('/user', {params: {userId: 'test'}});
}

这是我服务器上的代码

app.get("/user/?userId", (req, res, next) => {
  console.log('hello  2ddsaczczxczxC')
    console.log(req);
})

我的控制台日志没有记录任何内容,因此显然根本没有到达后端。

3 个答案:

答案 0 :(得分:0)

这是访问任何此类请求参数所需的更改。将您的休息终点更新为

/user/:userid

app.get("/user/:userId", (req, res, next) => {
  console.log('hello  2ddsaczczxczxC')
  console.log(req.params);
})

然后使用request.params或req.query访问查询,请同时检查expressjs的文档。

答案 1 :(得分:0)

您可以尝试以下方法:

app.get("/user/:userId", (req, res, next) => {
   console.log();
}

答案 2 :(得分:0)

您可以通过这样做传递查询参数

 reload() {
    this.http.get('/user', {queryParams: {userId: 'test'}});
}