我尝试使用 nodejs 和 mongodb 进行 crud 操作。所有 CRUD 操作都有效 fine.but get 方法只显示一个数据而不显示所有数据

I tried crud operation using nodejs and mongodb. all crud operation is working fine.but get method showing only one data not showing all data

我尝试使用 node js 进行 crud 操作,mongodb.all crud 操作有效 fine.but 我尝试 运行 获取其显示的方法;y one record.after 我看到我的编码它的抛出错误(发送后无法设置headers)。如何解决这个问题任何人给出建议。

index.js

router.get('/', async (req, res,next) => {
    (async function() {
        try {
          await client.connect();
          console.log("Connected correctly to server");
          const db = client.db('olc_prod_db');
          let r = await db.collection('Ecommerce').find();
          r.forEach(function(result,err)
          {
            res.send(result)
          })
          // Close connection
          client.close();
        } catch(err) {
          console.log(err.stack);
        }
      })();

  });

forEach 中不需要,只需执行:

const r = await db.collection('Ecommerce').find({}).toArray();
res.send({ data: r })
router.get('/', async (req, res,next) => {
(async function() {
    try {
      await client.connect();
      console.log("Connected correctly to server");
      const db = db.collection('Ecommerce').find({}).toArray(function(error, documents) {
        if (err) throw error;
        res.send(documents);
      });
    } catch(err) {
      console.log(err.stack);
    }
  })();

});

对于每个后续请求,您只需 'send' 一次。此方法只是完成请求周期,因此由于循环 运行 'n' time.

,您不能在循环中调用它