首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >express.js restfulApi,如果找不到对data.js的请求,如何添加错误消息?

express.js restfulApi,如果找不到对data.js的请求,如何添加错误消息?
EN

Stack Overflow用户
提问于 2022-02-10 08:16:27
回答 2查看 60关注 0票数 -1

这是app.js文件的代码,它用作restful,如果找不到数组(data.js)中的数据,我想添加一个错误消息。

代码语言:javascript
复制
const express = require('express');
const data = require('./data');

// Initialize App
const app = express();

// Assign route
app.use('/api', (req, res, next) => {
    const filters = req.query;
    const filteredUsers = data.filter(user => {
      let isValid = true;
      for (key in filters) {
        console.log(key, user[key], filters[key]);
        isValid = isValid && user[key] == filters[key];
        
      }
    
      return isValid;
    });
   
    res.send(filteredUsers);
  });

// Start server on PORT 5000
app.listen(8080, () => {
console.log('Server started!');
});
EN

回答 2

Stack Overflow用户

发布于 2022-02-10 08:20:44

您可以发送一个json作为404状态的响应,并解决错误,它看起来如下所示

代码语言:javascript
复制
if(!filteredUsers)
  res.status(404).send({
     error: "Data not found"
  })

或者可以是一个简单的文本

代码语言:javascript
复制
if(!filteredUsers.length)
   res.status(404).send("Data Not found")
票数 0
EN

Stack Overflow用户

发布于 2022-02-10 08:23:06

您可以在restful noed js中返回以下错误:

代码语言:javascript
复制
if (!data) return res.status(404).send({ msg: 'data not found' })

实际上,在您的代码中,您应该这样使用它:

代码语言:javascript
复制
const data = require('./data');


app.use('/api', (req, res, next) => {
if (!data) return res.status(404).send({ msg: 'data not found' })

    const filters = req.query;
    const filteredUsers = data.filter(user => {
      let isValid = true;
      for (key in filters) {
        console.log(key, user[key], filters[key]);
        isValid = isValid && user[key] == filters[key];
        
      }
    
      return isValid;
    });
   
    res.send(filteredUsers);
  });

祝你好运:)

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

https://stackoverflow.com/questions/71061756

复制
相关文章

相似问题

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