首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GET endpoint返回404

GET endpoint返回404
EN

Stack Overflow用户
提问于 2020-11-07 11:09:19
回答 1查看 51关注 0票数 0

我正在尝试从我的Postgres DB中检索特定的用户数据。

这段代码检索所有用户数据:

代码语言:javascript
复制
app.get("/employees", async (req, res) => {
  try {   
    const allEmployees = await pool.query("SELECT * FROM employees");
    res.json(allEmployees.rows);
  } catch (err) {
    console.error(err.message);
  }
});

但是这段代码并没有检索到一个用户,它在Postman上返回了一个404。

代码语言:javascript
复制
app.get("/employees/:id", async (req, res) => {
  try {
    const { id } = req.params;
    const oneEmployee = await pool.query("SELECT * FROM employees WHERE emp_id = $1", [
      id
    ]);

    res.json(oneEmployee.rows[0]);
  } catch (err) {
    console.error(err.message);
  }
});

我似乎不知道问题出在哪里。

EN

回答 1

Stack Overflow用户

发布于 2020-11-08 10:20:35

@AnujPancholi更新。我使用了node-postgres查询文档,并按如下方式更改了代码:

代码语言:javascript
复制
app.get("/employees/:emp_id", async (req,res) => {
 const query = {
   // give the query a unique name
   name: 'fetch-user',
   text: 'SELECT * FROM employees WHERE emp_id = $1'    
 }

 query.values = [req.params.emp_id];

 // callback
 await pool.query(query, (err, response) => {
   if (err) {
     console.log(err.stack);
   } else {
     res.json(response.rows);
   }
 });
});

然后在Postman上将我的端点设置为GET路由

代码语言:javascript
复制
http://localhost:3000/employees/4

我没有在params部分输入任何值。感谢您为我指明了正确的方向,特别是在邮递员部分。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64724067

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档